- 全栈开发 前端(web app 小程序)+ 服务端(微服务 分布式) + 数据端 (数据库 关系型数据库、redis热处理)
//简单请求
protected void doGet(HttpServletRequest request ,HttpServletResponse response)
//复杂请求
protected void doPost(HttpServletRequest request ,HttpServletResponse response)
protected void doGet(HttpServletRequest request ,HttpServletResponse response){
this.doPost(request,response);
}
protected void doPost(HttpServletRequest request ,HttpServletResponse response){
PrintWriter out = response.getWriter();
out.println("hello");
out.close();
}
com.xxx.xxx 域名倒置-> 防止包名重复
-
得到请求数据
String val = request.getParameter(String dataName); int age = Integer.parseInt(request.getParameter("ageValue"));
-
进行数据库操作CURD
// 注册驱动 class.forName("驱动类名"); // 建立数据库连接 Connection conn = DriveManager.getConnection("连接字符串",账号,密码); // 建立描述对象 Statement statement = conn.prepareStatement("sql语句"); statement.setString(number,name); //sql中的第number个?改为name // 执行sql ResultSet rs = statement.excuteQuery(); //查询 int num = statement.excuteUpdate(); //增删改 // 如果查询 while(rs.next()){ String name = rs.getString("列名"); int age = rs.getInt("列名"); } // 关闭 rs.close(); statement.close(); conn.close();
-
组建响应内容
private static final String DRIVER = " ";
private static final String URL = " ";
private static final String NAME = " ";
private static final String PSW = " ";
/**
static{
try{
Class.forName(DRIVER); //try catch
}catch(...){
...
}
**/
public static Connection getConnection(){
Class.forName(DRIVER); //try catch
Connection conn = null;
conn = DriverManager.getConnection(URL,NAME,PSW); //try catch
return conn;
}
public static void closeAll (conn,stmt,rs){
if(rs!=null)
rs.close();
...
}
}
ul.menu || ul .menu 空格
script head中平行加载 加载快 body中存在加载顺序 稳定
let 和 var 定义变量 function fun( )定义函数
let fun = function(){ //匿名函数
}
fun(); //调用函数
let fun = ()=>{ //箭头函数
}
匿名函数有this 箭头函数没有
el:'', //vue模版的范围 是一个非body元素
data:{ //用于双向绑定的数据
},
methods:{ //用于定义vue中使用的方法
loadMessage(){
//通过ajax技术访问数据
}
},
created(){ //生命周期中8个钩子函数中的一个 vue对象已经创建完成的阶段
//this 表示当前vue对象
}
// 8个钩子函数
Ajax readystate 和 status
<a target = "main">
<iframe name = "main" frameborder scolling>