MyEclipse75搭建SSH框架Word格式文档下载.docx
- 文档编号:16404612
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:14
- 大小:460.42KB
MyEclipse75搭建SSH框架Word格式文档下载.docx
《MyEclipse75搭建SSH框架Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《MyEclipse75搭建SSH框架Word格式文档下载.docx(14页珍藏版)》请在冰豆网上搜索。
图4-2
出现对话框后,我们选中Springconfigurationfile(applicationContext.xml)选项,目的是为了整合Spring和Hibernate,然后点击Next按钮,出现如图4-3:
图4-3
在弹出的对话框中,我们选择ExistingSpringconfigurationfile选项,并在SessionFactoryId文本框中sessionFactory,以此来整合Spring和Hibernate.然后接着点击Next按钮,并出现如图4-4的对话框:
图4-4
在弹出的对话框中,主要是让我们配置连接数据库的相关信息,这里我们是用的Oracle,所以我们在BeanId选项框中填好数据“dataSource”之后,我们直接在DBDriver下拉菜单中选择OracleDriver数据库驱动(当然你得先在MyEclipse7.5中先配置好连接Oracle的相关信息,才能在这个下拉菜单中出现你配置的驱动,否则只有MyEclipse自带的一个配置,这个配置几乎不用,也没有什么用。
所以得自己预先配置一个连接你想要连接的数据库的驱动),
选择驱动后,下面各个选项的数据会自动填充进去,点击Next按钮进入下一个对话框,并勾掉它默认选种的选项“CreateSessionFactoryclass”,然后点击Finish按钮,完成Hibernate的注入,以及Spring与Hibernate的整合。
如图4-5:
图4-6
六、为项目注入Struts,右键单击项目ssh,在右键菜单MyEclipse中选择它的自菜单addstrutscapabilities,弹出如图5-1的对话框:
图5-1
出现对话框后,我们选中Struts1.3版本、并把Basepackagefornewclasses的包结构改成我们自己的包结构“com.kettas0901.struts”,然后点击Finish按钮完成Struts的注入。
七、在顺利完成以上步骤后,我们再来修改web.xml,struts-config.xml和applicationContext.xml配置文件。
1)首先,我们修改applicationContext.xml,在applicationContext.xml文件中,有很多信息是需要隐藏起来的,以免过多的暴露系统的信息而埋下安全隐患,如数据库的配置信息,这对系统的数据安全很重要,所以,我们得把它的配制信息配置成外部文件的形式,然后再引用进来,首先我们在WEB-INF目录下创建一个名叫jdbc.properties的资源文件,然后在资源文件中配置连接数据库的相关信息:
datasource.type=oracle
datasource.driverClassName=oracle.jdbc.driver.OracleDriver
datasource.url=jdbc:
oracle:
thin:
@localhost:
1521:
kettas02
datasource.username=scott
datasource.password=sa
datasource.maxActive=10
datasource.maxIdle=2
datasource.maxWait=120000
datasource.whenExhaustedAction=1
datasource.validationQuery=select1fromdual
datasource.testOnBorrow=true
datasource.testOnReturn=false
c3p0.acquireIncrement=3
c3p0.initialPoolSize=3
c3p0.idleConnectionTestPeriod=900
c3p0.minPoolSize=2
c3p0.maxPoolSize=50
c3p0.maxStatements=100
c3p0.numHelperThreads=10
c3p0.maxIdleTime=600
完成配置后,我们在applicationContext.xml文件中首先配置一个bean:
<
beanid="
propertyConfigurer"
class="
org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"
<
propertyname="
locations"
<
list>
<
value>
WEB-INF/jdbc.properties<
/value>
/list>
/property>
<
/bean>
配置好之后,我们就可以使用该资源文件中配置的相关信息了。
数据库连接配置就可以改写成:
dataSource"
com.mchange.v2.c3p0.ComboPooledDataSource"
destroy-method="
close"
dependency-check="
none"
driverClass"
${datasource.driverClassName}<
jdbcUrl"
${datasource.url}<
user"
${datasource.username}<
password"
${datasource.password}<
acquireIncrement"
${c3p0.acquireIncrement}<
initialPoolSize"
${c3p0.initialPoolSize}<
minPoolSize"
${c3p0.minPoolSize}<
maxPoolSize"
${c3p0.maxPoolSize}<
maxIdleTime"
${c3p0.maxIdleTime}<
idleConnectionTestPeriod"
${c3p0.idleConnectionTestPeriod}<
maxStatements"
${c3p0.maxStatements}<
numHelperThreads"
${c3p0.numHelperThreads}<
这样,我们就很好的隐藏了我们数据库的相关信息,以免恶意人士破坏、攻击我们的数据库而造成的重大损失。
2)配置web.xml文件:
a)把Spring的配置文件applicationContext.xml路径配置到web.xml文件中,以便在WBE运用加载的时候就把applicationContext.xml的相关信息加载进来,配置如下:
context-param>
param-name>
contextConfigLocation<
/param-name>
param-value>
/WEB-INF/applicationContext.xml<
/param-value>
/context-param>
listener>
listener-class>
org.springframework.web.context.ContextLoaderListener<
/listener-class>
/listener>
b)配置编码过滤器,以解决乱码问题,配置如下:
filter>
filter-name>
encodingFilter<
/filter-name>
filter-class>
org.springframework.web.filter.CharacterEncodingFilter<
/filter-class>
init-param>
encoding<
UTF-8<
/init-param>
/filter>
filter-mapping>
url-pattern>
*.do<
/url-pattern>
/filter-mapping>
*.jsp<
c)配置一个叫OpenSessionInViewFilter的过滤器,这是Hibernate提供的过滤器,它主要作用就是在一级缓存的基础上去连接数据库,并取出我们想要的数据,这种情况通常在关联关系中得到体现,配置如下:
hibernateFilter<
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter<
如果我们不配置OpenSessionInViewFilter,而又想取出关联数据,实现方法只有如下3种:
1)在Hibernate的映射文件中,把关联关系的配置多加一个叫lazy的属性,并把它的值设置成false(默认是true),它的意思是是否延迟加载。
例如:
setname="
transaction"
inverse="
true"
cascade="
all"
lazy="
false"
keycolumn="
oid"
/key>
one-to-manyclass="
Transaction"
/>
/set>
上面的配置是在Order.hbm.xml文件中进行的,配置的是订单(Order)与订单明细(Transaction)的关联关系(一对多的关系)。
这样配置以后,在查询订单的时候便可以把订单相关的订单项一同查询出来。
这样做不为是种好的解决方法,这样可能会加重查询时给数据库的压力,也降低了查询的效力。
2)不关闭Session,这种方式显然不行,如果用户过多,就会给数据库服务器带来压力,以至崩溃,这种方式是最不能实现的。
3)根据页面需要的数据来查询数据,这种方式也是不合适的,这样做不仅使页面的灵活性降低,而且还使业务逻辑更加复杂。
d)在Spring2.0中除了以前的Singleton和Prototype外又加入了三个新的web作用域,分别为request、session和globalsession,它们的含义和用法可参考Spring官方手册的相关章节。
如果你想让你的容器里的某个bean拥有其中某种新的web作用域,除了在bean级上配置相应的scope属性,还必须在容器级做一个额外的初始化配置。
即在web应用的XML声明文件web.xml中配置一个名叫RequestContextListener的监听器:
org.springframework.web.context.request.RequestContextListener<
e)为了防止内存泄露,Spring提供了一个名叫IntrospectorCleanupListener的监听器:
org.springframework.web.util.IntrospectorCleanupListener<
f)配置加载struts-config.xml文件信息,配置如下:
servlet>
servlet-name>
action<
/servlet-name>
servlet-class>
org.apache.struts.action.ActionServlet<
/servlet-class>
config<
/WEB-INF/struts-config.xml
load-on-startup>
1<
/load-on-startup>
/servlet>
servlet-mapping>
/servlet-mapping>
g)为了减轻session给服务器带来的压力,需要定时释放服务器被占用的资源,所以我们需要在web.xml中配置如下几句:
session-config>
session-timeout>
10<
/session-timeout>
/session-config>
f)为了在服务器出问题的时候不暴露更多的漏洞,我们需要采取如下配置措施:
error-page>
error-code>
500<
/error-code>
location>
/commons/error.jsp<
/location>
/error-page>
404<
/commons/404.jsp<
403<
/commons/403.jsp<
到此,我们把web.xml的基本配置已写好。
3)配置struts-config.xml文件
a)首先,我们需要为Struts与Spring整合添加一个插件,配置如下:
plug-in
className="
org.springframework.web.struts.ContextLoaderPlugIn"
set-propertyproperty="
contextConfigLocation"
value="
/WEB-INF/spring_User.xml"
/plug-in>
2)需要注意的是,Struts和Spring整合后,Action就由Spring的来创建和管理,此时就得使用一个名叫DelegatingActionProxy的类,用此类便可以取得Spring为我们创建的一个Action代理对象,例如:
在struts-config.xml中的配置如下:
actionpath="
/regist"
name="
registForm"
type="
org.springframework.web.struts.DelegatingActionProxy"
forwardname="
registOk"
path="
/myshopping/jsp/login.jsp"
redirect="
yes"
registFailed"
path="
/myshopping/jsp/error.jsp"
redirect="
/action>
在applicationContext.xml中的配置如下:
beanname="
class="
com.myown.shop.action.RegistAction"
biz"
refbean="
userbiz"
注意,这里只是简短的配置,详细的配置请参看spring的配置说明,struts-config.xml中path属性的值必须和applicationContext.xml中的name属性的值要一致。
到此,我们的struts-config.xml配置文件已配置完成。
八、整合Spring与Dwr
a)新建立一个dwr.xml,即使你用不到这个配置文件,你也的创建它。
b)到官方网站
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MyEclipse75 搭建 SSH 框架