springmvc+mybaties的添加用户
来源:互联网 发布:mac 相册导入u盘 编辑:程序博客网 时间:2024/06/05 18:59
本次开发利用的spring mvc+mybaties+mysql,使用idea编辑器创建maven项目
开发步骤如下:
1.在mapper里面,即userbean.xml书写插入的mybaities语句
<insert id="insertUser" useGeneratedKeys="true" keyProperty="id"> insert into users (username,name,password,sex,birthday,createtime,content) values(#{username},#{name},#{password},#{sex},#{birthday},#{createtime},#{content})</insert>
该语句id要与Dao层里面的方法名一致,useGenerateKeys="true"是数据库里面设置了id主键自增,keyProperty自然是设置哪个属性为主键的。insert into users()第一个括号里面的字段要与实体里面的属性名一致,第二个括号里面的字段名要与前端的表单name值名字一致
2在Dao里面写sql语句调用的接口
public void insertUser(Users user);
3在service里面写调用Dao里面的方法
发现Dao里面没有实现类,原因如下
1)在spring.xml里面有
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="basePackage" value="com.jointem.hrm.dao" /> <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" /></bean>
步骤
1.在mybaties的sql语句注入配置文件中写入insert语句
注意:第一个圆括号里面的字段名与数据库里面的对应的表的字段一至,顺序一致。第二个括号里面的字段名与parameter里面的参数实体字段一致<insert id="insertUser" useGeneratedKeys="true" keyProperty="id" parameterType="Users" > insert into users (username,name,password,sex,birthday,createtime,content) values(#{username},#{name},#{password},#{sex},#{birthday},#{createtime},#{content})</insert>useGeneratedKeys="true"主键自增
2.前端Jquary+ajax请求传序列化值到后端,在后台新增加一个json类,通过后台的添加用户的方法向前端穿一个json值,后台的@ResponseBody直接代表该函数传递的是字符串,不加代表传递一个页面
<script type="text/javascript"> function formsubmit(){ var name = $("#username").val(); var rel_name = $("#name").val(); var password = $("#password").val(); var birthday = $("#birthday").val();//获取值 var sex=$('input:radio:checked'); var content=$("#content").val(); if (name == null || "" ==name) { alert("用户名不能为空"); return false; } if (rel_name == null || "" ==rel_name) { alert("姓名不能为空"); return; } if($("#msg").text() == "用户名不可用" ){ return; } if (password == null || "" ==password) { alert("密码不能为空"); return; } if (birthday == null || "" ==birthday) { alert("出生日期不能为空"); return; } var data1 =$('#userForm').serialize(); console.info(JSON.stringify($('#userForm').serialize())); $.ajax({ type : 'POST', url : '${pageContext.request.contextPath}/users/addUser?'+data1+"&birthday="+birthday, contentType: "application/json; charset=utf-8", data :data1, dataType : 'json', error : function(data) { alert("请求失败,网络异常") console.log(data); }, success : function(data) { if(data.code =="000000") { alert(data.msg); $.ajax({ type : 'POST', url : '${pageContext.request.contextPath}/users/toManage?'+data1, contentType: "application/json; charset=utf-8", data : null, dataType : 'json', }); }else{ alert(data.msg); } } }); } </script>后端
@RequestMapping("/toAddUser")public String toAddUser() { return "adduser";}@RequestMapping("/addUser")public @ResponseBodyString add(Users user) { JsonResult jsonResult = new JsonResult(); try { // p.setAttribute(user.getUsername(),user); user.setName(new String(user.getName().getBytes("iso-8859-1"),"utf-8")); user.setContent(new String(user.getContent().getBytes("iso-8859-1"),"utf-8")); userService.insertUser(user); jsonResult.setCode("000000"); jsonResult.setMsg("添加成功"); } catch (Exception e) { e.printStackTrace(); jsonResult.setCode("000001"); jsonResult.setMsg("添加不成功"); } return JSON.toJSONString(jsonResult);}
json类<form id="userForm" > <div class="MainDiv"> <table width="99%" border="0" cellpadding="0" cellspacing="0" class="CContent"> <tr> <th class="tablestyle_title" >人员信息录入</th> </tr> <tr> <td class="CPanel"> <table width="90%" border="0" cellpadding="0" cellspacing="0" style="width:80%" align="center"> <tr> <td align="left"> <%--<input type="submit"value="保存" class="button"/> --%> </td> </tr> <TR> <TD width="100%"> <fieldset style="height:100%;"> <legend>人员信息</legend> <table width="100%" border="0" cellpadding="2" cellspacing="1" style="width:100%"> <tr> <td nowrap align="right" width="9%">用户名:</td> <td width="36%"> <input name="username" type="text" class="input" id="username"/> <span class="red">*</span> <span id="msg"></span></td> <td nowrap align="right" width="9%">真实姓名:</td> <td width="36%"> <input name="name" type="text" class="input" id="name"/> <span class="red">*</span> </td> </tr> <tr> <td width="12%"><div align="right">登陆密码:</div></td> <td width="43%"> <input name="password" type="password" class="input" id="password" /> <span class="red">*</span></td> <td><div align="right"><label for="birthday">出生日期:</label></div></td> <td> <input name="birthday" type="date" class="input" id="birthday"/> <span class="red">*</span></td> <%--<input name="birthday" id="birthday" type="text" />--%> </td> </tr> <tr> <td nowrap align="right" width="9%">性别:</td> <td> <input name="sex" type="radio" value="1" checked> 男 <input name="sex" type="radio" value="0">女</td> </tr>> <tr> <%--<td nowrap align="right">是否管理员:</td>--%> <%--<td>--%> <%--<input type="checkbox">--%> <%--<input type="hidden" name="isadmin" id="isadmin"></td>--%> <td> </td> <td> </td> </tr> <tr> <td nowrap align="right">人员简介:</td> <td colspan="3"> <textarea name="content" cols="100" rows="6" class="input" id="content"></textarea></td> </tr> </table> <br /> </fieldset> </TD> </TR> </TABLE> </td> </tr> <TR> <TD colspan="2" align="center" height="50px"> <%--<button onclick="submit()">保存</button>--%> <input name="提交" type="button" class="button" value="保存" onclick="formsubmit()"> <input name="重置" type="reset" class="button" value="重置"/></TD> </TR> </TABLE> </div></form>注:提交的类型要为button,且触发时间的名字不能为submit,add等关键字
public class JsonResult { private String code; private String msg; private Object data; public void setCode(String code) { this.code = code; } public void setMsg(String msg) { this.msg = msg; } public void setData(Object data) { this.data = data; } public String getCode() { return code; } public String getMsg() { return msg; } public Object getData() { return data; }}
添加用户中有个日期转化的问题,inputl类型是date类型,后端的实体类里面要加下面的注释,pattern要根据前台穿过来的数据格式来定
@DateTimeFormat(pattern = "yyyy-MM-dd")//前段到后台注解private Date birthday;性别是一个多选按钮的名字要与实体里面的字段名字一致
阅读全文
0 0
- springmvc+mybaties的添加用户
- 简单的 spring + springMVC + mybaties 框架搭建
- springMVC+mybaties 报错
- spring+springMVC+mybaties 搭建
- springMVC添加用户demo
- 为工程添加mybaties
- springMVC+mybaties+maven整合quertz
- Spring+springmvc+mybaties框架整合
- 使用Mybaties的窍门
- Mybaties的动态sql:
- Mybaties的鉴别器
- MyBaties动态的SQL
- myBaties的级联查询
- myBaties的级联查询
- mybaties的执行流程
- mybaties+spring+springMVC+oracle+里面有一个创建百万数据库的案例
- Mybaties入门 Mybatis与SpringMVC,spring整合
- Spring+SpringMVC+MyBaties问题总结(一)
- 使用JSP Servlet和Ajax实现简单的注册页面的用户名密码验证
- coroutine 协程(skynet框架的消息处理)
- 阿里面试回来,想和Java程序员谈一谈
- 上市 or 并购,创业公司的出路在哪里?
- 有向图的强连通分量
- springmvc+mybaties的添加用户
- ps中修改文件最终的大小
- Python:输入一个数求它的最大约数。
- sql注入攻击
- 2017"百度之星"程序设计大赛
- 数据生成器
- LCATarjan离线算法
- Python爬虫之抓取数据——正则表达式/Beautiful Soup/Lxml
- httpclient