第一周工作笔记

html转jsp
先在html的顶部加入
1 2
| <%@ page language="java" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
|
声明完成之后将.html的后缀改为.jsp,否则直接更改会出现中文乱码,引入标签库,可以使用c标签进行前端数据的渲染
SSM框架前端url访问
在UTF-8声明后加上
1 2 3 4
| <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %>
|
与thinkphp的模块/控制器/方法 的访问模式不同
SSM通过控制器拦截访问的url并在控制器中确定要渲染的jsp页面
因此要指定jsp页面中的url需要先获得当前项目的根目录,否则会出现在开发环境可以正常访问,但在部署时会访问不了的情况。
这种获取方式与TP框架在配置文件中定义地址变量的方式 如出一辙
path指向/项目 是相对路径
basePath指向 域名/端口号/项目 是绝对路径
jsp页面中所有的url都需要通过path或basePath来访问
jquery的ajax写法
1 2 3 4 5 6 7 8 9 10 11
| $.post("url",{param1:value,param2:value},function(data){ //将得到的字符串转换成json var obj = eval("("+data+")"); //使用返回的success属性判断请求是否成功 if(obj.success){ //TODO }else{ //TODO } } );
|
监听触发按键事件
1 2 3 4 5
| document.onkeydown = function(e){ var e = event || window.event; if(e&&e.keycode == 13) //TODO }
|
如果不使用submit按钮而使用ajax提交form表单的数据,html就不会自动的处理回车事件
jquery validate 插件的使用
标准写法:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| $("#formId").validate({ rules:{ //需要被验证的控件拥有name属性 name1:{ required: true, remote:{ url: "", type: "post", dataType: "json", //data的回调函数必须这么写 data:{ name1:function(data){ return $(#name1).val(); } } } }, name2:{ minlength: 2 }, name3:{ maxlength: 3, equalTo: "#name2" } }, messages:{ ...... } }) //用户名称验证器 $.validator.addMethod("checkName",function(value,element,params){ var checkName = /^\w{3,12}$/g; return this.optional(element)||(checkName.test(value)); },"*只允许3-12位英文字母、数字或者下画线!");
|
要使用这个验证插件需要保证表单中有submit按钮,否则不会触发验证功能
在处理remote的控制器中需要加上 @Responsebody,表示返回数据
mybaits的插入写法
1 2 3 4 5 6
| <!-- 插入用户注册信息 --> <insert id="InsertUserInfo" parameterType="java.lang.String"> insert into T_USER (LOGINNAME,PASSWORD) values (#{param1,jdbcType=VARCHAR},#{param2,jdbcType=VARCHAR}) </insert>
|
#{param}这种占位符写法表示mybaits会自动进行sql的防注入
在插入多条字段时需要指定插入的位置及字段类型
控制html页面元素不能被选中
1 2 3
| document.body.onselectstart = function(){ return false; }
|
jsp引入模板文件
1
| <%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c"%>
|
在要被引入的jsp页面加入此声明之后才可以使用 命令
session拦截类报错
错误信息:
1
| Error configuring application listener of class
|
解决办法:在类中添加一个无参的构造函数
dataTable插件使用注意
保证table的布局如下:
1 2 3 4
| <table id = "tablename"> <thead></thead> <tbody></tbody> </table>
|
在这个插件中只有tbody标签中的内容会被识别为table的内容,其封装的一些功能也需要tbody中有内容才能正常使用