SSM整合过程中的一些小知识点(一)
前言:这几天都没有写博客了,主要是进行整合的过程中有很多问题,解决问题过程中也能够得到提升
1. IDEA调试小技巧
- 鼠标选中行号,鼠标左键打断点
- F8 跳过这一行,一步一步的执行
- F9 往下执行,直到遇到下个断点(这个很好用,我之前都不知道这个,每次一步一步的走。特别是调web程序的时候,我想重新发起请求,想让上个请求结束)
- F7 跳进这个函数
- shift +F8跳出这个函数
小结:F8,F9,F7是用的最多的
2. IDEA版本控制
- 鼠标右键-git-compare with ,,, (我自定义了快捷键 alt+D) 可以与上个版本比较,相当于git diff。但是git diff是命令行的,远没有图形页面直观
- 其他的感觉直接用git命令行更方便
3. Servlet
- SSM框架里面,Controller本质就是Servlet
- Servlet中文翻译是服务器程序,Servlet就是遵循Servlet开发的类
- Cookie的使用(好多博客cookie session说上天,就是就是不说具体怎么用)
Cookie cookie = new Cookie("cookiename","cookieValue");
cookie.setMaxAge(100); // 正代表时间, 0表示将其删除,-1表示有效期就一次,断开就没用了
// 这个是返回cookie给浏览器
response.addCookie(cookie); //response是一个HttpServletResponse对象
//获取浏览器的cookie
Cookie[] cookies = request.getCookies();
//可以通过idea ctrl+b 看cookie的源码
发现其实我们一般用的就是value属性(String类型),发现cookie里面能存的东西其实不多
response可以添加多个cookie,value虽然是String,但是有些特殊格式放不进去,这部分是我昨天调bug发现的,具体的细节不清楚,但是这两种放进去会有报错
str1 = "[69, 96, 89" str2 = " "
- Session 是自动生成的,在内存中的(我记得我之前有次面试(然后面试没了)回答session存在服务器文件系统或者数据库里面(这得有前提条件的))
// 通过这个获取session对象,不是自己new的,和cookie不一样,细节写一个试试
request.getSession()
cookie 和session的细节可以做一个免登陆的功能试下,就可以比较清楚的理解了
- Servlet的生命周期,试着继承下这个接口
public class MyServlet implements Servlet {
@Override
// 初始化的时候调用
public void init(ServletConfig servletConfig) throws ServletException {
}
@Override
public ServletConfig getServletConfig() {
return null;
}
@Override
// 每次处理请求的时候调用
public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException {
}
@Override
public String getServletInfo() {
return null;
}
@Override
// 销毁时调用
public void destroy() {
}
}
4. SSM配置与注解
这部分有点理解,但是感觉理解的不深入。先放着