个人大三暑假培训(九月)

  • 9.14
    学习内容:
    上午:如何使用debug模式,F5进入到方法里面,F6单步调试,断点能够在下面打了直接恢复运行,直接到下一个断点.调试的时候能够直接看变量的值.
    下午:使用mybatis框架. 导入jar包,配置mybatis-config.xml,配置properties文件,而后在dao包里面将dao的接口用.xml文件去实现.在.xml文件里面用< select>标签去实现查询.有parameterType做为参数类型,只有select标签有resultType和resultMap属性.resultMap的写法 不熟悉. 在标签里面id表明的接口的方法名.
  • 9.15
    学习内容: 上午学习了mybatis 的动态SQL.使用< where>标签和 < if test=”name!=null and name !=””>
    来判断,在if标签里面加上and name = #{name};后面的name经过HashMap的键获取,因此键名要同样.
    下午周考,遇到的一些问题:
    1. mybatis在Dao的 xml文件中使用#,在JSP页面中使用$.
    2. 在前端界面中,form表单能够写成method=post,在地址栏里面输入的就是get请求,能够根据这个来区分执行doGet()仍是doPost().
    3. 在HTML标签中好比radio能够设置同一个name,不一样的value,这样就能够根据value判断出后台获取到的是哪一个值.
    4. Servlet的生命周期不了解
  • 9.18
    学习内容: 上午–mybatis的脚手架,自动生成beans和dao.将原来须要手写的自动化了.
    下午–主要是Filter和Session.Filter是在进行页面跳转前检测,执行方法体,在里面进行判断,能够就继续请求,不须要指定跳转页面,由于这里只是检测请求是否符合要求.这里有一个过滤器的chain进行一系列的过滤检测..不能够就拦截请求,同时进行页面跳转.
    Session的生命周期是浏览器,做为一个浏览器会话对象,当浏览器所有关闭时对象才被关闭.做用域大于Request.
    注意点:前端

    1. 过滤器Filter 的时候要强转成HttpServletRequest
      继续请求–chain.doFilter(req,resp);
      拦截请求–使用重定向.resp.sendRedirect(“/index.jsp”);
    2. 请求转发–地址栏不变
      请求重定向–地址栏变化
    3. 在Servlet和Filter中使用注解@WebServlet和@WebFilter,这样能够不用再web.xml中写映射,可是Filter不能很方便的使用排序.
  • 9.19
    学习内容:上午–讲解项目的要求,制做了项目进度的excel表格,建立了项目的数据库.
    下午–配置验证码和MD5加密.
    验证码的步骤:java

    1. 添加jar包到WEB-INF下
    2. 因为验证码实际上是一个Servlet,因此须要在web.xml中配置Servlet,而且初始化参数.
    3. 在JSP页面中设置须要验证码的使用,在img标签下设置一个id和一个onclick事件
    4. 在JS中写一个方法去改变img的src属性,去发送请求到验证码Servlet的URL地址而且附加一个随机参数,同时在加载页面的时候须要调用这个方法去在页面显示以前得到验证码
    5. 在AdminLoginServlet中去得到参数,同时经过Session得到验证码中值,去比较.
  • 9.19
    一个大坑: 使用myeclipse 写Web项目的时候, 项目报错, 主要是不能导入HttpServlet等一系列Servlet,改jdk没什么用,后来发现 不能导入Servlet,是由于没有Tomcat的Library,要在Build Path中添加.
  • 9.25
    学习内容:mybatis的多表联合查询,在数据库中的外键都要转换成一个bean对象,在mybatis的mapper映射文件中,以前是result表明一个列,这里须要用到< association>标签,javaType =”com.beans.xxxx”,property=”外键名”,在association里面就是另一个表的全部映射.web

  • 9.26
    学习内容:上午–添加新闻的页面,使用了日期脚本,下拉框(须要先从数据库获取数据),富文本编辑器,图片的上传.
    下午–实现图片上传,新闻添加功能的实现.主要了解图片或者其余文件能够经过二进制流传输,以前的参数都是String传递,图片存储在tomcat的指定文件夹下,而不是项目文件夹下.
    难点: 文本编辑器的实现(从网上找), 图片的上传(须要用到Servlet 3.0 的特性,使用Part获取二进制流,还要加上注解@MultipartConfig(),前端在form表单加上一个属性enctype=”multipart/form-data”),添加新闻的时候会同时向数据库的两张表插入.要注意插入顺序.这里在mapper.xml文件须要用到在insert 标签中useGeneratedKeys=”true” keyProperty=”id”, 这样在插入的时候会自动返回主键id.数据库

  • 9.27
    学习内容:上午–前台界面的导航,使用原来的导航界面,只须要在数据库中查询出新闻类型后在jsp中使用< c:foreach>标签就能够循环显示.还有< jsp:include>标签,在其中添加的参数只能在指定的请求中传递,而在Servlet中设置的Attribute能够在整个jsp上传递.
    下午–实现首页的列表显示,根据不一样的新闻类型显示对应的新闻.在后端为了适应前台变化无穷的需求,本身新建一个bean类,前端须要什么就去建立一个类,可是方法仍然是在原来的Service中,Servlet能够用一个统一的IndexServlet去控制,(这里是由于前台的界面要求并不复杂,不过总感受一个Servlet是控制不来的.可是如今的功能比较少,能够用一个Servlet去控制).后端

  • -