java知识点:

1.control层创建Serlvet对象,与WEB-INF下的web.xml关联。
2.sql使用PreparedStatement类执行,注意

  1. String sql="insert into user_login_table (uname, loginTime) values(?,?)";
  2. PreparedStatement ps;
  3. try {
  4. ps = conn.prepareStatement(sql);
  5. ps.setString(1, uname);
  6. ps.setString(2, date);
  7. int i=ps.executeUpdate();
  8. if(i>0)
  9. return true;
  10. }catch (SQLException e) {
  11. e.printStackTrace();
  12. }
  13. return false;
  14. }

3.map&hashmap
之前没用过java的map,只用过python的字典(dictionary),用法相似。
4.java连接数据库(mysql)

  1. public static Connection getConnection() {
  2. try {
  3. Class.forName("com.mysql.cj.jdbc.Driver");
  4. } catch (ClassNotFoundException e) {
  5. // TODO Auto-generated catch block
  6. e.printStackTrace();
  7. }
  8. try {
  9. String mysqlUrl = "jdbc:mysql://127.0.0.1:3306/webdata?" + "user=root&password=wy19961227&serverTimezone=UTC";
  10. Connection conn=
  11. DriverManager.getConnection(mysqlUrl);
  12. return conn;
  13. } catch (SQLException e) {
  14. // TODO Auto-generated catch block
  15. e.printStackTrace();
  16. }
  17. return null;
  18. }

5.java使用JSON
java中需要引用org.json库。import org.json.JSONArray;import org.json.JSONObject;
具体代码如下:

  1. public static JSONObject headerJsonObject = new JSONObject("{'status':'0','message':'','total':'180','code':'0'}");
  2. public static String UsersToString(ResultSet users) {
  3. JSONArray jsonArray = new JSONArray();
  4. int count = 0;
  5. try {
  6. while(users.next()) {
  7. JSONObject jsonObject = new JSONObject();
  8. jsonObject.put("uname", users.getString("uname"));
  9. jsonObject.put("upwd", users.getString("upwd"));
  10. jsonObject.put("status", users.getString("status"));
  11. jsonObject.put("role", users.getString("role"));
  12. jsonObject.put("errornum", users.getString("errornum"));
  13. jsonArray.put(jsonObject);
  14. count += 1;
  15. }
  16. headerJsonObject.put("data", jsonArray);
  17. headerJsonObject.put("count", count);
  18. return headerJsonObject.toString();
  19. } catch (SQLException e) {
  20. e.printStackTrace();
  21. }
  22. return jsonArray.toString();
  23. }

6.制作Test方法进行单元测试

java部分总结:

主要是调用库以及IO部分,各种逻辑判断,读取写入占主要代码。

jsp知识点:

1.JSP本质就是web,封装好的HTML,访问url获取jsp页面本质就是将jsp页面在服务端内处理后再加载。
2.通过Session和Request获取对应的数据。

  1. User tmp = new User();
  2. tmp.setUname(request.getParameter("uname").toString());
  3. session.getAttribute("uname")
  4. session.invalidate();

3.jsp页面中,java代码需要在 <% %>内写。
4.web.xml中配置selvert

  1. <servlet>
  2. <servlet-name>action</servlet-name>
  3. <servlet-class>control.ActionServlet</servlet-class>
  4. </servlet>
  5. <servlet-mapping>
  6. <servlet-name>action</servlet-name>
  7. <url-pattern>*.do</url-pattern>
  8. </servlet-mapping>

5.selvert中返回json要用PrintWriter类

  1. protected void doGet(HttpServletRequest request, HttpServletResponse response)
  2. throws ServletException, IOException {
  3. // this.doPost(request, response);
  4. String path = request.getRequestURI();
  5. if (path.endsWith("getUserJson.do")) {
  6. User user = preData(request);
  7. String json = user.getAllUserJsonString();
  8. PrintWriter pw = response.getWriter();
  9. pw.write(json);
  10. pw.close();
  11. }
  12. if (path.endsWith("getLoginTime.do")) {
  13. String json = new LoginTime().getData();
  14. PrintWriter pw = response.getWriter();
  15. pw.write(json);
  16. pw.close();
  17. }
  18. }

6.jsp母版页:<%@ include file="head-res-main.jsp" %>
在母版页引入js、css文件,其它jsp文件引入母版页文件即可。

jsp部分总结:

1.由于时间因素,没有学会bean,是个遗憾。
2.由于界面逻辑需求,初步尝试了前后端分离开发,用基于Jquery的ajax异步以及用json交互数据。
3.学了一点Layui框架。

js知识点:

1.js返回上一页 window.history.go(-1);
2.js前往指定页 window.location.href="main.jsp";
3.ajax使用:

  1. $.ajax({
  2. url:"getLoginTime.do",
  3. type:"get",
  4. success:function(data){
  5. var json = eval("("+data+")");
  6. myChart.setOption({
  7. xAxis: {
  8. data: json.categories
  9. },
  10. series: [{
  11. name: '登录次数',
  12. type: 'bar',
  13. data: json.data
  14. }]
  15. });
  16. }
  17. });

4.js解析json:var json = eval("("+data+")");
5.js跳转页面时带参数,获取参数:

  1. function getQueryVariable(variable)
  2. {
  3. var query = window.location.search.substring(1);
  4. var vars = query.split("&");
  5. for (var i=0;i<vars.length;i++) {
  6. var pair = vars[i].split("=");
  7. if(pair[0] == variable){return pair[1];}
  8. }
  9. return(false);
  10. }
  11. window.location.href="updateUser.jsp?uname=" + getQueryVariable("uname");

js部分总结:

1.之前并不太会js,经过这次有了初步的入门。
2.初次使用ajax,感觉方便好用。
3.使用js等技术开发前端,与后端通过接口交互实现前后端分离开发起来确实很好。