- 浏览: 160514 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
zbg1983:
jumboluo 写道这是一个Ext的一个bug:http:/ ...
EXTJS4 郁闷的Loading -
caelyntang:
在二级联动加载的时候提前加载一次二级联动,不是根据一级联动的值 ...
EXTJS4 郁闷的Loading -
55558888:
将 queryMode: 'local', 改为 query ...
EXTJS4 郁闷的Loading -
jumboluo:
这是一个Ext的一个bug:http://www.sencha ...
EXTJS4 郁闷的Loading -
jumboluo:
也遇到同样的问题,也不知道怎么解决啊。
EXTJS4 郁闷的Loading
一直自己搭建框架的意愿,跟着别人的模式走,对于真正体会开发显得不足。
经验有限,望高手指点。(好久都没有进行web开发,有点手生,呵呵,努力。)
第一步:首先下载需要的开发包。
1、ext开发包(ext-2.2.zip)。
下载地址:http://extjs.com/
2、struts开发包(struts-2.0.14-all.zip)。
下载地址:http://struts.apache.org/
3、spring开发包(spring-framework-2.5.6-with-dependencies.zip)
下载地址:http://www.springsource.org/
4、Hibernate开发包(hibernate-distribution-3.3.1.GA-dist.zip),对于它,还有相关包,可以根据需要选择。
下载地址:http://www.hibernate.org/
对于spring的网站,很奇怪,现在变成springsource.com,尝试了好多次才打开,不知道有什么限制。
另外环境搭建:eclipse3.3+tomcat6.0+mySql5.0。
第二步:建立工程。
这个不用多说。
首先在这里想问一个问题:在建立工程中有没有工程编码的设置?
这个在以后开发中遇到很多问题,如果有的话,尽量设置为UTF-8,而不是默认的那个ISO-8859-1,如果你的工程出现中文资源传问题,你就会发现这个的必要,当然这只是一点。
第三步:设置数据库编码。
在建立数据库是设置默认编码为UTF-8,假如不这样,在字段中出现中文时,会出错,开始是莫名其妙。首次使用mySQL还不是很熟悉,尽力学习吧。
OK,开始工程框架之旅。
最基本的东西就是配置(web.xml\struts.xml\spring.xml),还有就是引入包的问题。
先说引入包。
对于上struts:
struts2-core-2.0.14.jar:
核心包,必须。
ognl-2.6.11.jar:
OGNL的全称是Object Graph Navigation Language(对象图导航语言)。
xwork-2.0.7.jar:
与webwork相关,具体细节不是很清楚。
struts2-spring-plugin-2.0.14.jar:
与spring结合插件,可以不使用。
对于spring:
spring.jar:
核心包,必须。
对于hibernate:
hibernate3.jar:
核心包,必须。
antlr-2.7.6.jar:
ANother Tool for Language Recognition(antlr)。
commons-collections-3.1.jar:
集合类。
dom4j-1.6.1.jar:
XML配置和映射解释器。
javassist-3.4.GA.jar:
Javassist 字节码解释器。
jta-1.1.jar:
jta规范,当Hibernate使用jta的时候需要。
slf4j-api-1.5.2.jar以及slf4j-log4j12-1.5.0.jar:
新的日志记录模式,可替代log4j。
另外对于common的选择,则自己选择。
对于mySQL的连接,采用jtds,包括:
commons-pool-1.3.jar:
一个用于在Java程序中实现对象池化的组件。
jtds-1.2.2.jar:
JTDS JDBC Driver。
mysql-connector-java-5.0.3-bin.jar:
mysql驱动。
对于其余的jar,可以根据需要进行增加。
以尽量少用为原则,在这一点上,发现Hibernate做的比较好,在他的目录下明显放置required、optional、bytecode显而易见,可以自由选择,当然要了解具体你要做的事务。
好了,反正开发的原则是开始尽可能少加入jar包,然后根据需要逐步增加,在配置完基本的xml后,启动工程,看看提示的错误,在进行jar包的引入。
说句实话,对于这种框架组合最烦的就是jar包版本问题。
下面来看主要的配置文件,一般这个配置成功了,开发就变的简单了。
看web.xml配置文件:
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> <filter> <filter-name>struts2</filter-name> <filter-class> org.apache.struts2.dispatcher.FilterDispatcher </filter-class> <!-- <init-param> <param-name>config</param-name> <param-value> struts-default.xml,struts-plugin.xml,struts.xml,../config/struts/*.xml </param-value> </init-param> --> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <context-param> <param-name>log4jConfigLocation</param-name> <param-value>/WEB-INF/log4j.properties</param-value> </context-param> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/config/spring/*.xml</param-value> </context-param> <listener> <listener-class> org.springframework.web.util.Log4jConfigListener </listener-class> </listener> <listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
看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> <constant name="struts.locale" value="zh_CN" /> <constant name="struts.i18n.encoding" value="UTF-8" /> <constant name="struts.i18n.reload" value="true" /> <constant name="struts.custom.i18n.resources" value="messages" /> <constant name="struts.action.extension" value="do" /> <constant name="struts.configuration.xml.reload" value="true" /> <constant name="struts.enable.DynamicMethodInvocation" value="false" /> <include file="struts_admin.xml" /> </struts>
而对于实际处理的action,则采用分离xml配置。
这里是上边配置的struts_admin.xml的内容。
<?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="admin" namespace="/admin" extends="struts-default"> <action name="login" class="userAction" method="login"> <result name="input"> /com/ebook/web/pages/failure.jsp </result> <result name="success"> /com/ebook/web/pages/user/list.jsp </result> </action> <action name="list" class="userAction" method="list"> <result name="input"> /com/ebook/web/pages/failure.jsp </result> <result name="success"> /com/ebook/web/pages/user/json.jsp </result> </action> <action name="layout" class="userAction" method="layout"> <result name="input"> /com/ebook/web/pages/failure.jsp </result> <result name="success"> /com/ebook/web/pages/user/layout.jsp </result> </action> <action name="json" class="userAction" method="json"> </action> <action name="ajax" class="userAction" method="ajax"> </action> </package> </struts>
看spring配置文件:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="location" value="WEB-INF/config/database/database.properties" /> </bean> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="${database.driver}"></property> <property name="url" value="${database.url}"></property> <property name="username" value="${database.user}"></property> <property name="password" value="${database.password}"></property> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource"> <ref bean="dataSource" /> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.SQLServerDialect </prop> <prop key="hibernate.cache.use_query_cache">false</prop> <prop key="hibernate.show_sql">true</prop> </props> </property> <property name="mappingResources"> <list> <value>com/ebook/user/model/xml/User.hbm.xml</value> </list> </property> </bean> <bean id="userDao" class="com.ebook.user.dao.impl.UserDaoImpl"> <property name="sessionFactory"> <ref bean="sessionFactory" /> </property> </bean> <bean id="userServer" class="com.ebook.user.server.impl.UserServerImpl"> <property name="dao"> <ref bean="userDao" /> </property> </bean> <bean name="userAction" class="com.ebook.user.action.UserAction"> <property name="server"> <ref bean="userServer" /> </property> </bean> </beans>
在配置中注意头部文件。
至于具体的实现业务,则分别放置于action、server、dao中。
action支持的struts的跳转,即视图数据获取、展示以及控制跳转。
server支持的spring,进行事务处理,支持业务逻辑。
dao支持Hibernate,进行数据库操作,即所谓的持久层。
另外,增加model,及数据模型,将数据对象转换为java对象,Hibernate支持。
附带一个配置文件。
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="com.ebook.user.model"> <class name="User" table="t_user"> <id name="id" type="java.lang.String" column="USERID"></id> <property name="name" type="java.lang.String"> <column name="USERNAME" /> </property> <property name="pwd" type="java.lang.String"> <column name="PWD" /> </property> <property name="departid" type="java.lang.String"> <column name="DEPARTID" /> </property> <property name="email" type="java.lang.String"> <column name="EMAIL" /> </property> <property name="state" type="java.lang.String"> <column name="STATE" /> </property> </class> </hibernate-mapping>
至于具体业务模块是否在此细分问题,看情况决定。
java代码的写作风格,看自己情况了。
组织结构就上面所述。
前页面处理采用ext,由于没有经验,学习中。
现在的感觉,用上了ext,struts骄傲的标签完全没有用,对于国际化支持问题,ext不知道怎么体现。
struts骄傲的标签,没用上。Form数据收集整理还没来得及想详看。对ActionSupport进行研究。
spring骄傲的事务管理,简单业务也是用不上。至于IOC,必不可少。
Hibernate骄傲的那么多技术,不知道能用到多少。对HibernateDaoSupport进行研究。
深入吧,研究中……
慢工出细活。
说句闲话:思路很重要,思想更重要。原理很重要,实现是其次。
发表评论
-
EXTJS4 郁闷的Loading
2011-12-27 22:24 3259使用EXTJS4,写联动的combo控件,首次选择联动效果,可 ... -
我想,我得回到servlet中去!
2008-12-30 14:58 976华丽的外表掩盖了太多的实质。 servlet真的很强大,重 ... -
propedit,OK!
2008-12-30 14:52 1489在eclipse下开发,建立个messages_zh_CN.p ... -
http://www.androidcn.net/wiki/index.php/
2008-12-01 15:28 0http://www.androidcn.net/wiki/i ... -
Android竟然会出现这样的问题??
2008-12-01 14:11 1083运行android程序后,我的磁盘空间不断减少,不知道为什么? ... -
Zip压缩继续分析
2008-11-24 10:58 1111前面的一篇文章说明了压缩以及解压缩,但是对于字节流的分析表示, ... -
java中的压缩以及解压类
2008-11-22 08:40 1816在查看zip以及unzip的时候,看到了这两个类(Deflat ... -
关于zip文件的字节码处理
2008-11-21 09:39 1225昨天写了一篇关于压缩文件以及压缩文件解压问题,现在对于自己压缩 ... -
Zip以及UnZip处理
2008-11-20 11:26 1396早上看到一篇关于压缩文件的处理文章,测试之后发现解压缩unzi ... -
自己写资源串处理文件
2008-11-19 14:13 1025本文主要是模拟配置文件中的资源串文件,将最终处理结果存放于Ma ... -
自己处理公式
2008-11-18 15:03 985问题说明: 给定一个字符串,例如: String gsstri ... -
到底谁的效率高??
2008-11-17 11:24 1091在写代码的时候,常常使用if-else显得很麻烦,对于简单的赋 ... -
代理、监听器的理解,希望指点。
2008-10-31 17:29 920首先定义一个接口: public interface IWor ... -
手机触摸屏程序开发
2008-10-24 14:15 2430使用J2ME技术实现手机触摸屏开发的方法: 首先的修改调试环 ... -
J2EE中的基础知识
2008-10-23 12:58 1017转载:用于学习 J2EE ... -
OO的五大原则
2008-10-22 16:08 870OO的五大原则 OO的五大原则是指SRP、OCP、 ... -
奇怪而又无可厚非的类加载顺序
2008-10-21 09:05 4040昨天看到这样一篇帖子 ... -
笔试题目(摘)
2008-10-15 12:34 01、计算机系统中采用补 ... -
think in java回顾整理之RTTI
2008-10-10 15:08 2675运行期类型鉴定(RTTI)的概念初看非常简单——手上只有基础类 ... -
think in java回顾整理之传递以及返回对象
2008-10-10 15:07 1150Java是有指针的!事实上,Java中每个对象(除基本数据类型 ...
相关推荐
SSM框架简单示例
SSM框架搭建的一个简单的Shiro示例,实现授权.
ssh框架简单示例 就是ssh框架的搭建
手工搭建的SSM框架示例,已配置成功,解压压缩包后将项目导入IDE,并在MySQL中导入SQL文件,即可运行,具体操作见附上的说明文件
ssm简单框架示例,适合初学ssm框架同学,如有搭建问题,可以写下你的问题额
适合理解ssm框架搭建流程简单案例,maven项目演练案例
用Python写网络爬虫(示例网站搭建)(框架+本书pdf+章节代码)
针对rose框架流程搭建一个简单的项目,方便初学者快速理解、掌握其工作原理。
vue2+webpack搭建h5框架
Struts2、Spring、Hibernate框架搭建示例 一个用户注册的小例子,主要是框架的使用 数据库使用Mysql 数据库名:test 表名:User 表内字段:id(PK),username,password
虽说容易,但在框架搭建过程中仍然遇到了许多问题,这个实例使用的是sql2005数据库,需要先在微软官网下载依赖包(微软不支持Maven直接下载包),再把包放入Maven的本地仓库中,之后pom中导入(请按照pom中的路径放...
idea2018.1,jdk1.8,纯净、精简ssm框架,可以用来示例学习
自己搭建的mvc框架,帮助理解的测试程序,使用了springmvc,mybatis + jquery+tiles+jsp
本示例描述了spring mvc框架的搭建,通过一个注册登入实验,详细描述了spring mvc的搭建方式。提供源代码。
学习PhoneGap时搭建的一个简单的示例框架,仅仅供参考。
主要涉及struts2,spring与Ibatis三大主流框架的搭建流程以及配置文件代码实例
用maven和intellij来搭建SSH框架,实现了一个用户注册界面,用户输入用户名和密码并提交之后,将信息自动记录到数据库中
springMVC+hibernate+ext搭建的一个demo示例 (内含数据库脚本 mysql)
IDEA环境下的搭建的SSM框架+X-admin-v2.1的后台界面+示例 没事儿的时候自己搭建的一套开发框架,基本上满足后台系统开发的需求了。 与数据库的交互示例,前台和后台的交互示例都写上了。 直接在上边写功能模块就是...
内容概要:Vue3+vite搭建基础架构示例代码。...适用人群:适合初学者搭建框架使用以及如果项目需要打开多个tab页来显示页面,则可以参考该架构设计。 使用场景及目标:项目需要使用打开多个tab页。或者练习vue3写法。