- 浏览: 625943 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (448)
- 字符串相关 (16)
- Struts2页面显示 (15)
- Hibernate错误记录 (6)
- linux命令 (2)
- java项目测试 (5)
- 个人作品 (10)
- hibernate应用 (15)
- struts1 (7)
- 数据库(除了hibernate) (42)
- J2ME/WAP (37)
- servlet/jsp (49)
- java桌面应用+java综合 (14)
- 服务器配置,报错解决 (24)
- Myeclipse配置,抛错解决 (8)
- linux (18)
- JavaScript+jquery+ajax (45)
- div css 页面设计 (16)
- 互联网综合运营 (14)
- 编程工具类 (3)
- 论文 报告 文献 (14)
- PHP (26)
- struts2 (9)
- spring (1)
- 我的IT生活 (14)
- Resin (6)
- java项目记录 (14)
- https安全 (11)
- 支付技术 (3)
最新评论
-
yihaijunyxr:
很好呀,我好久没用iteye了,今天找出两个帐号(yihaij ...
c/c++的监听tmlisten启动缓慢解决 -
yihaijun:
好像这不算是技术博客,是工作博客
c/c++的监听tmlisten启动缓慢解决 -
ml365:
后来还优化了webservice的前置框架,不用cxf,用了另 ...
c/c++的监听tmlisten启动缓慢解决 -
Jayliuying:
有点晚哈 但是也支持一下 楼主
java相关论文的参考文献【转】 -
gqsunrise:
...
我是项目经理,我的项目管理日记【20120229】
一 整个项目的框架,文件夹分布 二 一些重要的配置文件 2.1 struts.xml 此配置文件主要申明了 <!-- 使用spring的工厂去替换struts2的默认工厂,也就是Action由spring来创建和维护 --> 然后引入一些 <include file="cn/citic/trade/login/loginStruts.xml"></include> 具体的struts配置还是利用上面的引入,分布到具体的模块去些,这里只是一个集合,方便管理。 2.2 某个模块的struts配置文件,xxxStruts.xml 在这个配置文件,主要申明了某个模块用哪个Action类来控制和这个控制类处理之后的页面跳转结果页面。由于是利用Spring来管理struts,配置文件里写的处理类名字,其实是在Spring的bean配置文件里面申明好的一个id名字 其中的<package name="aerra" namespace="/" extends="main">里面的name="aerra"是模块名, namespace="/"反映在url上就是模块名之前的路径 触发的时候是url/aerra 这样 而<action name="aerra_*" class="aerraTradeAction" method="{1}">的 name="aerra_*" 是指只要请求的地址里模块是以aerra_开头的,就进入class="aerraTradeAction"这个类来处理,而这个 erraTradeAction 是由spring管理的,在spring的bean配置文件面进行申明。 2.3 applicationContext.xml 这个配置文件配置了c3p0连接池,注入hibernate的mapping映射文件,注入了各个模块对应的SpringBean配置文件(里面申明了Aciton类和操作数据库接口实现类),还有申明了会话工厂sessionFactory,在接口实现类里面直接用sessionFactory就可以操作数据库相关,比如实例化连接池然后操作数据库之类。 这里配置的是这个模块的action申明 接口实现类申明 然后用spring进行注入,以后直接调用配置文件里面的id名字,就可以实现这些类,也不用自己申明,服务器在启动的时候,已经找到这些配置文件进行实例化了,注入就可以使用
<constant name="struts.objectFactory" value="spring" /><?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<include file="struts-default.xml" />
<!-- 指定Web应用的默认编码集,相当于调用HttpServletRequest的setCharacterEncoding方法 -->
<constant name="struts.i18n.encoding" value="UTF-8" />
<constant name="struts.action.extension" value="action" />
<!-- 设置浏览器是否缓存静态内容,默认值为true(生产环境下使用),开发阶段最好关闭 -->
<constant name="struts.serve.static.browserCache" value="false" />
<!-- 当struts的配置文件修改后,系统是否自动重新加载该文件,默认值为false(生产环境下使用),开发阶段最好打开 -->
<constant name="struts.configuration.xml.reload" value="true" />
<!-- 开发模式下使用,这样可以打印出更详细的错误信息 -->
<constant name="struts.devMode" value="false" />
<!-- 默认的视图主题 -->
<constant name="struts.ui.theme" value="simple" />
<!-- 文件上传时的临时目录 -->
<constant name="struts.multipart.saveDir" value="D:/temp" />
<constant name="struts.multipart.maxSize" value="204800000" />
<!-- 使用spring的工厂去替换struts2的默认工厂,也就是Action由spring来创建和维护 -->
<constant name="struts.objectFactory" value="spring" />
<package name="main" namespace="/" extends="json-default">
<interceptors>
<interceptor name="sessionTimeOut" class="cn.citic.trade.interceptor.SessionInterceptor" />
<interceptor name="trimInterceptor" class="cn.citic.trade.interceptor.TrimInterceptor" />
<!-- Session权限拦截器栈 -->
<interceptor-stack name="sessionTimeOutStack">
<!-- 去参数前后空格 -->
<interceptor-ref name="trimInterceptor" />
<!-- 使用系统默认的拦截器 -->
<interceptor-ref name="defaultStack" />
<!-- 使用自定义的拦截器 -->
<interceptor-ref name="sessionTimeOut" />
</interceptor-stack>
</interceptors>
</package>
<!-- 引用功能模块对应的Strusw配置文件 -->
<include file="cn/citic/trade/login/loginStruts.xml"></include>
<include file="cn/citic/trade/merchant/merchantStruts.xml"></include>
<include file="cn/citic/trade/user/userStruts.xml"></include>
<include file="cn/citic/trade/trade/tradeStruts.xml"></include>
<include file="cn/citic/trade/report/reportStruts.xml"></include>
<include file="cn/citic/trade/permission/permissionStruts.xml"></include>
<include file="cn/citic/trade/credit/creditStruts.xml"></include>
<!-- 二期需求 -->
<include file="cn/citic/trade/aerra/aerraStruts.xml"></include>
<include file="cn/citic/trade/tradetype/tradeTypeStruts.xml"></include>
</struts>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="aerra" namespace="/" extends="main">
<!-- xxxx交易流水功能管理 -->
<action name="aerra_*" class="aerraTradeAction"
method="{1}">
<!-- 登录超时和Session权限的拦截器栈 -->
<interceptor-ref name="sessionTimeOutStack" />
<result name="timeout">/timeout.jsp</result>
<result name="uploadSuccess">/WEB-INF/aerra/aerra_upload_messages.jsp</result>
<result name="uploadError">/WEB-INF/aerra/aerra_upload_messages.jsp</result>
<result name="list">/WEB-INF/report/bank_fee_income_list.jsp</result>
<result name="addUI">/WEB-INF/report/bank_fee_income_add.jsp</result>
<result name="editUI">/WEB-INF/report/bank_fee_income_edit.jsp</result>
<result name="success">/WEB-INF/report/ajaxDone.jsp</result>
<result name="error">/WEB-INF/report/ajaxDone.jsp</result>
</action>
</package>
</struts>
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
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.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
<context:annotation-config />
<!-- C3p0数据源 ,做成了单例模式 -->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
destroy-method="close">
<property name="driverClass" value="net.sourceforge.jtds.jdbc.Driver" />
<property name="jdbcUrl" value="jdbc:jtds:sqlserver://localhost:1433/citic" />
<property name="user" value="sa" />
<property name="password" value="xxxxxx" />
<!-- 每60秒检查所有连接池中的空闲连接。Default:0 -->
<property name="idleConnectionTestPeriod" value="60" />
<!-- 初始化时获取的链接数,取值应在minPoolSize与maxPoolSize之间。Default:3 -->
<property name="initialPoolSize" value="2" />
<!-- 连接池中保留的最小连接数 -->
<property name="minPoolSize" value="1" />
<!-- 连接池中保留的最大连接数。Default:15 -->
<property name="maxPoolSize" value="20" />
<!-- 最大空闲时间,120秒内未使用则连接被丢弃。右为0则永不丢弃。Default:0 -->
<property name="maxIdleTime" value="120" />
<!-- 当连接池中的连接耗尽时,c3p0一次同时获取的连接数。Default:3 -->
<property name="acquireIncrement" value="5" />
</bean>
<!-- 会话工厂 -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<!-- 注入数据源 -->
<property name="dataSource" ref="dataSource" />
<!-- 指定 Hibernate 的映射文件 -->
<property name="mappingResources">
<list>
<!-- 交易类型表:二期需求 -->
<value>cn/citic/trade/tradetype/bean/TradeType.hbm.xml</value>
<!-- 用户信息表 -->
<value>cn/citic/trade/user/bean/UserInfo.hbm.xml</value>
<value>cn/citic/trade/merchant/bean/BigMerchantInfo.hbm.xml</value>
<value>cn/citic/trade/merchant/bean/SmallMerchantInfo.hbm.xml</value>
<value>cn/citic/trade/trade/bean/MerchantTradeInfoTemp.hbm.xml</value>
<value>cn/citic/trade/trade/bean/SecondCountInfo.hbm.xml</value>
<value>cn/citic/trade/credit/bean/CreditSummonsInfo.hbm.xml</value>
<value>cn/citic/trade/merchant/bean/MccMainbiz.hbm.xml</value>
<value>cn/citic/trade/trade/bean/MerchantSummaryByMonths.hbm.xml</value>
<!-- 权限模块 -->
<value>cn/citic/trade/permission/bean/PermissionOperate.hbm.xml</value>
<value>cn/citic/trade/permission/bean/PermissionRole.hbm.xml</value>
<value>cn/citic/trade/permission/bean/PermissionGroup.hbm.xml</value>
<value>cn/citic/trade/permission/bean/PermiessionGroupRole.hbm.xml</value>
<value>cn/citic/trade/permission/bean/PermissionRoleOperate.hbm.xml</value>
<value>cn/citic/trade/report/bean/BankIncomeAccount.hbm.xml</value>
<value>cn/citic/trade/report/bean/BankFeeIncome.hbm.xml</value>
<value>cn/citic/trade/aerra/bean/AerraTradeInfo.hbm.xml</value>
</list>
</property>
<!-- 设置Hibernate属性 -->
<property name="hibernateProperties">
<value>
hibernate.dialect=org.hibernate.dialect.SQLServerDialect
hibernate.hbm2ddl.auto=update
hibernate.show_sql=false
hibernate.format_sql=false
</value>
</property>
</bean>
<!-- 配置关于Hibernate的事务管理器,以使用Spring提供的事务管理功能 -->
<bean id="txManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<!-- 使用基于注解方式来配置事务 -->
<tx:annotation-driven transaction-manager="txManager" />
<!-- 用于注入分页用到的PageDaoImpl实例-->
<bean id="pageDao" class="cn.citic.trade.utils.page.PageDaoImpl">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<!-- 导入各部份功能对应的applicationContext文件 -->
<import resource="cn/citic/trade/login/loginBeans.xml" />
<import resource="cn/citic/trade/merchant/merchantBeans.xml" />
<import resource="cn/citic/trade/user/userBeans.xml" />
<import resource="cn/citic/trade/trade/tradeBeans.xml" />
<import resource="cn/citic/trade/report/reportBeans.xml" />
<import resource="cn/citic/trade/permission/permissionBeans.xml" />
<import resource="cn/citic/trade/credit/creditBeans.xml" />
<!-- 二期需求:交易类型码 -->
<import resource="cn/citic/trade/tradetype/tradeTypeBeans.xml" />
<import resource="cn/citic/trade/aerra/aerraBeans.xml" />
</beans>
2.4 某个模块的springBean配置文件<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
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.5.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">
<!--service bean -->
<!-- 机构差错交易流水功能管理接口 -->
<bean id="aerraTradeService"
class="cn.citic.trade.aerra.service.impl.AerraTradeServiceBean" />
<!--action bean -->
<!-- 机构差错交易流水功能Action -->
<bean id="aerraTradeAction" class="cn.citic.trade.aerra.action.AerraTradeAction"
scope="prototype" />
</beans>
2.5 log4j.properties配置文件
加入log4j的lib之后,通过这个配置文件,就可以使用log4j来打印log了。只需要在程序里这样:
private static final Log log = LogFactory.getLog(AerraTradeAction.class); log.warn() or log.info()
就可以使用了
# Logger - 日志写出器,供程序员输出日志信息 #log4j.rootLogger=DEBUG,CONSOLE,FILE,ROLLING_FILE,DATABASE,MAIL log4j.rootLogger=INFO,CONSOLE,DRF 这里配置打印类型,加上info 就可以打印log.info的信息了,没加的不显示 #log4j.rootLogger=ERROR,CONSOLE #log4j.rootLogger=WARN,CONSOLE,FILE,ROLLING_FILE,DATABASE,MAIL #log4j.rootLogger=ERROR,CONSOLE,FILE,ROLLING_FILE,DATABASE,MAIL #log4j.rootLogger=FATAL,CONSOLE,FILE,ROLLING_FILE,DATABASE,MAIL # CONSOLE # ConsoleAppender - 目的地为控制台的Appender log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender log4j.appender.CONSOLE.Threshold=DEBUG log4j.appender.CONSOLE.Target=System.out # Layout - 日志格式化器,用来把程序员的logging request格式化成字符串 # PatternLayout - 用指定的pattern格式化logging request的Layout log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout #log4j.appender.CONSOLE.layout.ConversionPattern=[%-5p]-[%d{yyyy-MM-dd HH:mm:ss,SSS}]-[%c.java:%L] %m%n log4j.appender.CONSOLE.layout.ConversionPattern=[%-5p][%d{yyyyMMdd HH:mm:ss,SSS}][%C{1}:%L] %m%n #应用于文件 # FileAppender - 目的地为文件的Appender log4j.appender.FILE=org.apache.log4j.FileAppender log4j.appender.FILE.File=${catalina.home}/logs/CiticTradeFile.log log4j.appender.FILE.Append=false log4j.appender.FILE.layout=org.apache.log4j.PatternLayout #log4j.appender.FILE.layout.ConversionPattern=[%-5p]-[%d{yyyy-MM-dd HH:mm:ss,SSS}]-[%c.java:%L] %m%n log4j.appender.FILE.layout.ConversionPattern=[%-5p][%d{yyyyMMdd HH:mm:ss,SSS}][%C{1}:%L] %m%n # 应用于文件回滚 # RollingFileAppender - 目的地为大小受限的文件的Appender log4j.appender.ROLLING_FILE=org.apache.log4j.RollingFileAppender log4j.appender.ROLLING_FILE.Threshold=ERROR log4j.appender.ROLLING_FILE.File=${catalina.home}/logs/rolling.log # 文件最大尺寸 log4j.appender.ROLLING_FILE.MaxFileSize=1024KB # 备份数 log4j.appender.ROLLING_FILE.MaxBackupIndex=1 log4j.appender.ROLLING_FILE.layout=org.apache.log4j.PatternLayout log4j.appender.ROLLING_FILE.layout.ConversionPattern=[%-5p][%d{yyyyMMdd HH:mm:ss,SSS}][%C{1}:%L] %m%n # DailyRollingFileAppender(每天产生一个日志文件) log4j.appender.DRF=org.apache.log4j.DailyRollingFileAppender log4j.appender.DRF.Threshold=WARN log4j.appender.DRF.DatePattern='.'yyyy-MM-dd log4j.appender.DRF.File=${catalina.home}/logs/CiticTradeDRF.log log4j.appender.DRF.Append=true log4j.appender.DRF.layout=org.apache.log4j.PatternLayout log4j.appender.DRF.layout.ConversionPattern=[%-5p][%d{yyyyMMdd HH:mm:ss,SSS}][%C{1}:%L] %m%n #应用于数据库 log4j.appender.DATABASE=org.apache.log4j.jdbc.JDBCAppender log4j.appender.DATABASE.Threshold=FATAL log4j.appender.DATABASE.URL=jdbc:microsoft:sqlserver://xxxxx;DatabaseName=citic log4j.appender.DATABASE.driver=com.microsoft.jdbc.sqlserver.SQLServerDriver log4j.appender.DATABASE.user=sa log4j.appender.DATABASE.password=xxxxx log4j.appender.DATABASE.sql=INSERT INTO TRADE_MY_LOG (USER_NO,USER_NAME,LOG_DATE,LOG_TIME,LOG_CLASS,LOG_METHOD,LOG_LEVEL,LOG_CONTENT,REMARK) VALUES ('%X{MDC_USER_NO}','%X{MDC_USER_NAME}','%d{yyyy-MM-dd HH:mm:ss,SSS}','%d{yyyy-MM-dd HH:mm:ss,SSS}','%c.java:%L','%M','%p','%m%n','') log4j.appender.DATABASE.layout=org.apache.log4j.PatternLayout log4j.appender.DATABASE.layout.ConversionPattern=[%-5p][%d{yyyyMMdd HH:mm:ss,SSS}][%C{1}:%L] %m%n
在Action里面使用其他接口或其他类,也很简单,直接注入就可以
@Resource
private AerraTradeService aerraTradeService;
然后可以直接用那个对象,来调用方法使用了
发表评论
-
进程和数据库操作commit等问题出现僵死进程导致偶尔出错
2012-10-19 21:04 823项目管理中,有个交易的问题,偶尔出现,查了很多代码和相关模块, ... -
支付产品的前前后后
2012-06-04 21:21 873好 只是为了记录而已。 一个支付产品,比如网站。 开发产品 ... -
我是项目经理,我的项目管理日记【20120229】
2012-02-29 19:01 1485我想说我上一个项目还未完成,就已经嗝屁了。暂停开发! 不说这 ... -
我是项目经理,我的项目管理日记【20120214】
2012-02-14 14:45 936各位情人节快乐! 这周开始出差,在北京,有朋友吗?呵呵。 ... -
我是项目经理,我的项目管理日记【20120202】
2012-02-02 14:13 1878在投标之后,本人有一 ... -
项目初验验收会流程
2012-01-30 15:03 16111 厂家用ppt简单讲解整个项目的背景,需求,功能模块(大概) ... -
我是项目经理,我的项目管理日记【20111202】
2011-12-09 11:21 748补发的,不知道为何找 ... -
我是项目经理,我的项目管理日记【20111209】
2011-12-09 10:42 889刚刚回过神来,想起来两条之前的小经验吧。也马上在这里记录下。 ... -
我是项目经理,我的项目管理日记【20111207】
2011-12-07 09:39 1455首先我要说下,我跟了两个所谓的项目。一个是新项目,招标;另一个 ... -
说说我对组网的理解!请大家给意见,文字不多,精简!
2011-12-06 08:55 871最近在跟一个项目,前期需要了解一些组网的知识,就是我们的机房, ... -
ssh项目具体处理Action类和接口,接口实现类的代码
2011-10-08 15:40 1511当写好Struts和spring的配置文件之后,就可以开始写具 ... -
jsp中运用Ajax处理过程及页面动态显示处理结果(out.print出html)
2011-10-08 10:06 28081 我们先来看下jsp上调用这个ajax的代码 < ... -
ssh中某功能模块处理过程
2011-10-08 09:23 8161 页面上通过url触发, ...
相关推荐
在这个“SSH框架整合项目源码”中,可以看到如何将这三个框架协调工作,形成一个完整的开发体系。发布系统通常包括用户登录、权限管理、内容发布、审核、查询等功能。开发者可能已经对这些功能进行了优化,例如提高...
ssh框架项目源码ssh框架项目源码ssh框架项目源码ssh框架项目源码ssh框架项目源码ssh框架项目源码ssh框架项目源码ssh框架项目源码ssh框架项目源码ssh框架项目源码ssh框架项目源码ssh框架项目源码ssh框架项目源码ssh...
SSH框架,全称为Struts2、Spring和Hibernate的组合,是Java Web开发中常见的三大开源框架集成。这个压缩包文件"SSHdemo"提供了一个SSH框架搭建登录功能的示例,帮助开发者了解并实践如何整合这三个框架来构建一个...
SSH 框架项目优化 SSH 框架项目优化是指在 Struts 框架下,如何对项目进行优化,以提高项目的性能和可维护性。下面将介绍 SSH 框架项目优化的相关知识点。 一、Struts 框架优化 1. 使用基类继承:在 Struts 框架...
4. **使用说明【必读】.txt**:这个文件非常重要,它应该包含了如何配置和运行SSH框架项目的详细步骤,包括环境搭建、项目导入、数据库连接设置、配置文件解析、以及如何运行和测试应用程序等内容。 在实际开发中,...
这个“商贸项目SSH框架实现代码”提供了完整的源码,对于学习和理解SSH框架的工作原理及实际应用具有很高的价值。 1. **Spring框架**:Spring是核心的IoC(Inversion of Control)和AOP(Aspect Oriented ...
这个“SSH框架项目实战”显然是一份关于如何使用这三个框架进行实际项目开发的教程或示例代码。接下来,我们将深入探讨SSH框架的核心概念、相互作用以及在实际项目中的应用。 1. **Struts2**:Struts2是一个基于MVC...
在这个名为"完整ssh框架详细项目"的压缩包中,你将找到一个实际操作的示例,帮助你理解和应用SSH框架。 **Spring框架**是整个项目的基石,它负责管理应用程序的组件,提供依赖注入(DI)和面向切面编程(AOP)。DI...
基于ssh框架项目实例
ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ssh 框架 ...
在文档提供的信息中,作者雷筱珍通过“完全基于注解方式SSH框架项目设计”这篇文章,向读者详细阐述了SSH框架项目设计中注解应用的具体方法。文章中提到的参考文献,如《Struts, Hibernate, Spring集成开发宝典》和...
这个压缩包文件包含了四个基于SSH框架的实战项目源码以及相关的学习笔记,这对于深入理解SSH框架的集成与应用具有极大的帮助。 1. **Struts框架**:Struts是一个开放源代码的Web应用程序框架,它基于MVC设计模式,...
本文将详细介绍如何在IntelliJ IDEA中配置SSH框架,并通过一系列步骤来实现项目的搭建过程。 #### 二、环境准备 在开始配置之前,请确保已经安装并配置好了以下工具: - **IntelliJ IDEA**:最新版本或支持SSH框架...
【基于SSH框架的Web项目】是一个综合性的开发实践,它主要使用了Struts2、Spring和Hibernate这三大流行开源框架,构建了一个功能完善的Web应用程序。SSH框架组合在Java Web开发中广泛使用,提供了模型-视图-控制器...
ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ssh shhs ssh ...
SSH框架项目是一个基于Java技术的Web开发框架,主要由Spring、Struts2和Hibernate三个开源组件组成。这个项目特别适合初学者,特别是那些对Java编程有一定了解但对SSH框架还不熟悉的新手小白。通过学习和实践这个...
在这个"SSH框架项目源代码"中,你可以看到如何将这三个框架整合到一个空项目中,从而理解它们的交互方式。通过学习这些源代码,你可以深入理解SSH框架的实现原理,以及如何在实际项目中进行应用。对于初学者来说,这...
韩顺平.SSH框架视频教程-项目实战-校内网(含源代码、设计文档、关系图和数据库脚本) 网盘地址 已整理。 韩顺平.SSH框架视频教程-项目实战-校内网(含源代码、设计文档、关系图和数据库脚本) 网盘地址 已整理。
在"ssh2框架练习项目及代码"中,我们可以深入学习和实践SSH2框架的核心功能和应用场景。 Spring框架是SSH2的核心,它提供了一个全面的基础设施,支持从简单的Bean管理到复杂的AOP(面向切面编程)和事务管理。...
这个项目是一个基于SSH框架实现的简单银行系统,旨在帮助开发者更好地理解和运用SSH框架进行实际项目开发。 首先,Struts2是MVC(模型-视图-控制器)设计模式的一个实现,它提供了处理HTTP请求、控制应用流程、组织...