我的大三暑假培训(九月)

来源:互联网 发布:linux解压缩命令gz 编辑:程序博客网 时间:2024/04/29 06:06
  • 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加密.
    验证码的步骤:

    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里面就是另外一个表的所有映射.

  • 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去控制).

  • -