spring+struts2+ibatis 框架整合以及解析
一. spring+struts2+ibatis 框架 搭建教程
参考:http://biancheng.dnbcw.net/linux/394565.html
二.分层
1.dao: 数据访问层(增删改查);一个接口,一个实现类,实现类需要继承 SqlMapClientDaoSupport
2.service:业务逻辑层;一个接口,一个实现类 ,在实现类添加dao的注入
3.action: 表示层 需要继承 ActionSupport ,添加service的注入
4.model :实体类
5.config:实体类对应的xml文件
三:配置文件解析
1.sqlMapConfig。xml 中的 setting 属性设置
参考:http://blog.sina.com.cn/s/blog_4a9eb8290100atff.html
<settings
cacheModelsEnabled="true" 全局性地启用或禁用 SqlMapClient 的所有缓存,true为启用。调试程序时使用。
lazyLoadingEnabled="false" 全局性地启用或禁用SqlMapClient的所有延迟加载
enhancementEnabled="true" 全局性地启用或禁用运行时字节码增强
maxSessions="64" 同一时间内活动的最大 session 数
maxTransactions="8" 同时进入 SqlMapClient.startTransaction()的最大线程数
maxRequests="128" 同时执行 SQL 语句的最大线程数
useStatementNamespaces="false" 如果启用本属性,必须使用全限定名来引用
classInfoCacheEnabled="true" 是否启用缓存类
errorTracingEnabled="true"
defaultStatementTimeout="" 被设置的值以秒为单位等待连接失效
statementCachingEnabled="true" 是否启用准备缓存
/>
根据实体类。xml进行映射 eg:<sqlMap resource="com/test/config/UsersModel.xml"/>
2.struts。xml 文件解析
一般放在src 的根目录下
参考: http://blog.csdn.net/thinkscape/article/details/7462670
struct-service.xml: dao 注入到service
struts-action.xml : service 注入到action
3.spring 的xml文件解析(applicationContext.xml)
<beana xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">
</beans>
---xmlns -> xml namespace。 类似与java中的package
---xmlns:xsi-> xml schema instace。 xml 文件遵守的xml规范
---xsi:schemaLocation -> 本文档里的xml元素所遵守的规范。 schemaLocation:用来引用(schema)模式文档,第一个值表示命名空间,后面的值表示描述该命名空间的文档的位置
该文件主要做:配置数据源,事务管理,建立sqlMapClient 与dao 层的联系
4.web.xml
主要做: 配置起始页; 配置 struts,spring
四:jsp 页面
1. strusts 标签的使用
如: <s:iterator value="ulist"> 需要引用<%@ taglib prefix="s" uri="/struts-tags" %>
2.java 数据提交方式
1.1 表单提交 form get/post
使用:配置form 表单 <form action="userAc!addUser.s" method="post"></form>
(1) 使用struts 标签 <s:textfield name="umodel.logginid" label="登陆账号" /> <s:submit value="提交" />
优点:使用简单 ,关键在配置 标签的 name="umodel.logginid" 属性
缺点:不能做验证
(2)使用普通标签<input type="text" id="loginid">
优点:可以做验证。利用标签的id 获取到值做验证。 $("#form").submit(); 使用表单提交
缺点:稍复杂,需使用js/js+jquery(jquery需要引用js文件)。
1.2. ajax get/post
优点: 异步刷新
$.post("url",{'参数名':参数},function(data){
//处理返回结果
});
action中获取ajax传过去的参数
参数类型 a = request.getParameter("参数");
3.jquery的初始化方法
$(document).ready(function(){
//页面一加载就调用的事件放入此处。
});
4.两个jsp页面传值
跳转方式为:window.location.href="update.jsp?id="+参数;
接收方式为:<% String name=request.getParameter("id");%>
5. 关于for循环
for(int i=0;i<2;i++)
System.out.println(i);
for(int j=2;j<4;j++)
System.out.println(j); 打印 0 1 2 3
for(int i=0;i<2;i++){
System.out.println(i);
for(int j=2;j<4;j++)
System.out.println(j);
} 打印 0 2 3 1 2 3
五. 错误排查
1. 运行报404 错误
(1)首先检查代码是否有误,在console 中查看是否有打印错误信息
(2)检查在WEB-INF 下是否生成了classes 文件; 如果没有:点击项目,右键-》属性(properties)->java build path source 下 更改default output folder
2. 找不到某文件
(1)在项目下查看是否有某文件
(2)查看文件是否发布成功-》D:\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps
spring+struts2+ibatis 框架整合以及解析的更多相关文章
- spring struts2 ibatis 框架结构图
spring struts2 ibatis 框架结构图
- Spring+Struts2+Hibernate框架整合流程
一:基本步骤 新建Maven项目,导入相关依赖(推荐) 在WEB-INF的web.xml中进行配置 ————–Hibernate配置 —————- 创建entity包,创建数据库相关实体类 根据实体类 ...
- SSM(Spring,SpringMVC,Mybatis)框架整合项目
快速上手SSM(Spring,SpringMVC,Mybatis)框架整合项目 环境要求: IDEA MySQL 8.0.25 Tomcat 9 Maven 3.6 数据库环境: 创建一个存放书籍数据 ...
- Spring与Struts框架整合
Spring与Struts框架整合 Struts,用Action处理请求 Hibernate,操作数据库 Spring,负责对象创建 Spring与Struts框架整合的关键点在与:让Struts框架 ...
- SSH(Spring SpringMVC Hibernate)框架整合
项目说明: 使用SSH(Spring SpringMVC Hibernate)框架整合添加部门功能 项目结构 1.导入依赖jar包 <!--单测--> <dependency&g ...
- Spring+Struts2+Hibernate的整合
这篇主要采用Maven搭建Spring+Struts2+Hibernate的整合项目,复习一下SSH框架,虽然spring提供自己的MVC框架, 但是Spring也提供和其他框架的无缝整合,采用组件形 ...
- SSM(Spring+SpringMVC+MyBatis)框架整合开发流程
回忆了 Spring.SpringMVC.MyBatis 框架整合,完善一个小demo,包括基本的增删改查功能. 开发环境 IDEA MySQL 5.7 Tomcat 9 Maven 3.2.5 需要 ...
- Spring + Spring MVC+Hibernate框架整合详细配置
来源于:http://www.jianshu.com/p/8e2f92d0838c 具体配置参数: Spring: spring-framework-4.2.2Hibernate: hibernate ...
- SSM Spring SpringMVC Mybatis框架整合Java配置完整版
以前用着SSH都是老师给配好的,自己直接改就可以.但是公司主流还是SSM,就自己研究了一下Java版本的配置.网上大多是基于xnl的配置,但是越往后越新的项目都开始基于JavaConfig配置了,这也 ...
随机推荐
- jquery-ui-widget
编写jQueryUI插件(widget) 使用jQueryUI的widget来写插件,相比于基本的jquery插件有一些好处: * 方便实现继承,代码重用 * 默认是单例 * widget已经给你实现 ...
- C++中string
之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必 担心内存是否足够.字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下(甚至 ...
- CSS判断不同分辨率显示不同宽度布局CSS3技术支持IE6到IE8
CSS判断不同分辨率浏览器(显示屏幕)显示不同宽度布局CSS3技术支持IE6到IE8.将用到css3 @media样式进行判断,但IE9以下版本不支持CSS3技术,这里DIVCSS5给大家介绍通过JS ...
- Linux内核探索之路——关于方法
转载自:http://blog.chinaunix.net/uid-20608849-id-3014502.html Linux内核实践之路 -给那些想从Linux内核找点乐趣的人 一个不能回避的 ...
- Yii实现Password Repeat Validate Rule
在使用Yii时遇到这样的需求:在一个注册的页面输入两次密码,并验证两次输入是否一致.可是password的repeat的字段在数据库 并不存在.问题来了,如何创建一个password_repeat的属 ...
- ECSHOP session
ECSHOP session传值 <?phpclass cls_session{ var $session_table = ''; ; // SESSION 过期时间 var $sess ...
- BZOJ2318: Spoj4060 game with probability Problem
#include<iostream> #include<algorithm> #include<cstring> #include<cstdio> #i ...
- Win10 的虛擬桌面
Win10 的虛擬桌面我覺得蠻多餘的,平常很少用,除非是像以前的 "切換老闆鍵" ,老闆來了,你不想讓他知道你在幹嘛,趕快切換另外一個桌面. 切換工作視窗:Alt + Tab 叫出 ...
- linux环境下Vim的配置
原文链接:http://blog.chinaunix.net/uid-26826958-id-3272375.html (本文转自此链接中的部分内容,但做了适当修改) 安装vim命令:sudo ap ...
- 日历视图(CalendarView)组件的功能和用法
日历视图(CalendarView)可用于显示和选择日期,用户既可选择一个日期,也可通过触摸来滚动日历.如果希望监控该组件的日历改变,可调用CalendarView的setOnDateChangeLi ...