`
53873039oycg
  • 浏览: 844147 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

[简单]Spring_Mybatis_CRUD简单示例(带数据库)

阅读更多

        上次写了篇Spring_CRUD简单示例的文章,有些朋友反映没有使用数据库,当时只是为了测试方便,今天分享篇带数据库的例子,例子带批量删除和批量导入数据,有前台验证,数据库使用了Oracle,结果如下
     

      新增用户前台校验:

     

      新增用户结果:

     

 

       下面说下代码中部分关键代码

       得到所有用户:

      

<select id="getUserAll" resultType="UserInfo">
		select
		t.id,
		t.uname,
		t.uemail,
		(select name from tsql_test_region tr
		where tr.id = t.uregion) uregion,
		(select name from tsql_test_region tr
		where tr.id = t.ucounty) ucounty,
		t.usale,
		t.uhiredate
		from
		tsql_test_userinfo t
</select>

    修改用户信息前,设置原来的值:

   

function preUpdateUser(varId) {
		$("#formDiv").css("display","block");
		var varRegion='';
		var varCounty='';
		var rgId='';
		$.ajax({
			type : "get",
			url : "<%=path%>/user/list/"+varId,
			dataType:"json",
			success : function(data, textStatus) {
				varRegion=data.uRegion;
				varCounty=data.uCounty;
				$('#uName').val(data.uName);
				$('#uEmail').val(data.uEmail);
				$('#uSale').val(data.uSale);
				$('#uHireDate').val(data.uHireDate);
				$('#userForm').append('<input type="hidden" id="id" name="id"/>');
				$('#id').val(data.id);
				$('#userForm').attr('action','<%=path%>/user/list/updateUser');
				$('#addUserSpan').html('修改');
					$.ajax({
						type : "get",
						url : "<%=path%>/region/all",
						dataType:"json",
						success : function(data, textStatus) {
							var options='';
							$.each(data, function(index, value) { 
								if(value.name==varRegion){
									rgId=value.id;
									options+="<option value=\""+value.id+"\" selected>"+value.name+"</option>"; 
									$.ajax({
					         			type : "get",
					         			url : "<%=path%>/region/region",
					         			data : {
					         				regionId : rgId
					         			},
					         			dataType : "json",
					         			success : function(data, textStatus) {
					         				var options = '';
					         				$.each(data, function(index, value) {
					         					if(value.name==varCounty){
					         						options+="<option value=\""+value.id+"\" selected>"+value.name+"</option>"; 
					         					}else{
					         						options+="<option value=\""+value.id+"\">"+value.name+"</option>"; 
					         					}
					         				});
					         				$('#uCounty').html(options);
					         			},
					         			error : function() {
					         				artDialogOpen('error','系统错误','系统错误,请刷新页面!');
					         			}
					         		});
								}else{
									options+="<option value=\""+value.id+"\">"+value.name+"</option>"; 
								}
							});  
			                 $('#uRegion').html(options);
						},
						error : function() {
							artDialogOpen('error','系统错误','系统错误,请刷新页面!');
						}
					});
			},
			error : function() {
				artDialogOpen('error','系统错误','系统错误,请刷新页面!');
			}
		});
	}

    批量删除:      

   

function deleteAll() {
		var varUserIds ='';
		$("#infoDetail input[type='checkbox']:checked").each(function() {
			varUserIds+=this.value;
			varUserIds+=','
		});
		if (varUserIds.length == 0) {
			artDialogOpen('warning','系统提示','请选择要删除的记录');
			return false;
		} 
		varUserIds=varUserIds.substring(0, varUserIds.length - 1);
		$.ajax({
			type : "get",
			url : "<%=path%>/user/list/deleteUsers",
			data : {
				userIds : varUserIds
			},
			success : function(status) {
				window.location.href="<%=path%>/";
			},
			error : function() {
				artDialogOpen('error','系统错误','系统错误,请刷新页面!');
			}
		});
	}	

    Mybatis中配置为

   

<delete id="deleteUsers">
		delete from
		tsql_test_userinfo
		where id in
		<foreach collection="array" item="item" index="index" open="("
			separator="," close=")">
			#{item}
		</foreach>
	</delete>

    Java代码:

   

@RequestMapping(value = "/list/deleteUsers", method = RequestMethod.GET)
	public @ResponseBody
	String deleteUser(@RequestParam(required = true) long[] userIds) {
		boolean flag = userInfoService.deleteUsers(userIds);
		if (flag) {
			return "success";
		} else {
			return "error";
		}
	}

     结果为

    

 

     批量导入:

   

<insert id="batchInsertUsers" parameterType="java.util.List">
		insert into tsql_test_userinfo(id, uname, uemail, uregion, ucounty,
		usale, uhiredate)(
		select
		rpt_seq$seq.nextval,A.* from(
		<foreach collection="list" item="test" index="index"
			separator="union all">
			select #{test.uName}, #{test.uEmail},
			#{test.uRegion},#{test.uCounty},#{test.uSale},#{test.uHireDate}
			from
			dual
		</foreach>
		)A)
</insert>	

     结果为

     

 

      最后是报表下载,结果为

     

 

     其他的代码见附件,建表语句文件在createtable.sql,请自己建序列,因为我好像忘记添加上去了,不会的参考下面的sql:

    

-- Create sequence 
create sequence RPT_SEQ$SEQ
minvalue 1
maxvalue 9999999999999
start with 1
increment by 1
cache 20;

    本文系原创,转载请注明出处,谢谢。

    全文完

 

  • 大小: 49.5 KB
  • 大小: 161.3 KB
  • 大小: 63.8 KB
  • 大小: 145.2 KB
  • 大小: 130.9 KB
  • 大小: 91.7 KB
  • 大小: 140.8 KB
0
0
分享到:
评论
1 楼 yinjiangzhb 2015-01-16  
这仁兄好,,

相关推荐

    白色简洁风格的韩国个人网页源码下载.zip

    白色简洁风格的韩国个人网页源码下载.zip

    倒车雷达51单片机超声波测距(含仿真)

    基于AT89C51的超声波测距

    白色宽屏风格的室内设计公司整站网站源码下载.zip

    白色宽屏风格的室内设计公司整站网站源码下载.zip

    白色简洁风格的眼睛设计制作企业网站模板.zip

    白色简洁风格的眼睛设计制作企业网站模板.zip

    (178721838)基于Mysql和OpenCV的人脸识别系统(源码和部署教程).zip

    基于Mysql和OpenCV的人脸识别系统(源码和部署教程).zip。内容来源于网络分享,如有侵权请联系我删除。另外如果没有积分的同学需要下载,请私信我。

    “预防夏季中暑”知识讲座教案课件.pptx

    “预防夏季中暑”知识讲座教案课件

    Java毕业设计-基于springboot+vue的在线教育平台源码+文档+视频教程

    Java毕业设计-基于springboot+vue的在线教育平台源码+文档+视频教程 系统说明: 3.3 角色功能分析 3.3.1 管理员用例分析 数据统计:管理员可以查看系统的数据统计信息,如用户数量、订单数量等。 轮播管理:管理员可以管理系统首页的轮播图内容,包括添加、编辑、删除等操作。 课程管理:管理员可以管理系统中的课程信息,包括审核待审批的课程、编辑课程内容等。 分类管理:管理员可以管理课程的分类信息,包括添加、编辑、删除分类。 讲师管理:管理员可以管理系统中的讲师信息,包括审核讲师入驻申请、编辑讲师信息等。 学员管理:管理员可以管理系统中的学员信息,包括查看学员列表、禁用学员账号等。 用户管理:管理员可以管理系统中的用户信息,包括查看用户列表、禁用用户账号等。 订单管理:管理员可以管理系统中的订单信息,包括查看订单列表、处理订单退款等操作。如下图3-1所示: 图3-1 管理员用例图 管理员用例表描述了管理员在黑板擦在线教育系统中的常见操作,包括登录系统、数据统计、轮播管理、课程审核和分类管理等。管理员首先通过输入用户名和密码登录系统,然后可以查看系统的数

    用QT写的一个UDP数据发送测试小程序

    采用QT写了一个基于UDP协议的数据发送小程序,可以发送自定义帧结构数据和记录的数据文件,使用方便。

    其实这就是历年摘出来的

    其实这就是历年摘出来的

    疫苗预约系统:数据库设计与数据安全性

    在传统信息管理方法中,我们面临诸多挑战:处理信息耗时、数据错误率高、数据修正困难以及数据检索不便。为了解决这些问题,引入计算机化的疫苗预约系统软件显得尤为重要,这样的系统不仅能够规范信息管理流程,实现管理工作的系统化和程序化,还能帮助管理人员准确、迅速地处理信息。 在开发工具的选择上,我们经过慎重考虑,最终选择了Eclipse作为开发工具,以及Mysql作为数据库工具,以便于实现疫苗预约系统的各项功能。系统的核心功能包括管理员对用户的管理以及新闻公告的发布。 疫苗预约系统是一款基于软件开发技术构建的应用系统,它在信息处理方面表现出色,无论是数据的快速添加、维护、统计还是查询,都能轻松应对,极大地提高了信息处理的速度和准确性。

    基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)

    基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目),本资源中的源码都是经过本地编译过可运行的,评审分达到98分,资源项目的难度比较适中,内容都是经过助教老师审定过的能够满足学习、毕业设计、期末大作业和课程设计使用需求,如果有需要的话可以放心下载使用。 基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python的二手房数据分析完整源码+说明文档+分析报告+数据(高分项目)基于python

    白色宽屏风格的肉制品销售企业网站模板.zip

    白色宽屏风格的肉制品销售企业网站模板.zip

    白色简洁风格的房产交易中心企业网站源码下载.zip

    白色简洁风格的房产交易中心企业网站源码下载.zip

    白色简洁风格的高级西餐牛排模板下载.zip

    白色简洁风格的高级西餐牛排模板下载.zip

    漂亮的收款打赏要饭网HTML页面源码.zip

    漂亮的收款打赏要饭网HTML页面源码,一款简洁而美观的HTML页面,专为个人收款和接受他人打赏而设计

    白色简洁风格的网上眼镜商城网站源码下载.zip

    白色简洁风格的网上眼镜商城网站源码下载.zip

    白色卡通精致的机器人企业网站模板下载.zip

    白色卡通精致的机器人企业网站模板下载.zip

    知攻善防-应急响应靶机-web2.z22

    知攻善防-应急响应靶机-web2.z22

Global site tag (gtag.js) - Google Analytics