版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、老大想要做一个TimeSheet的东西,要管理公司员工每年的时间和effort. 反正还要个什么报表,老大发话了,很荣幸我有此机会又可以和刚进公司带我的老大一起做东西了,感觉很好。不过这个项目是一个partime job,自己在工作中抽时间来做。当然啦,堆码的事情肯定我来搞定啦。 项目开发,需求不是我定,所以在等待需求的时候,我就将环境先搭建起来。上次做了一个Spring + Spring MVC + Mybatis + Log4J + JUnit Test的环境搭建,这次也差不多,不过就是基于了Maven,同时也添加了事
2、务管理。 首先,可以去了解一下maven,个人觉得这个东西就是JAR包管理方便,不用自己一个个去写,直接添加dependence就行了,不过有时候要注意哟,有可能重复的包含了某个JAR包,会报冲突的哟,亲!因为只有一个POM文件里指定JAR包,所以整个项目都很小的,一般就几MB,只有你在将该项目打成WAR包的时候,maven会自动的把三方JAR包放进项目,然后你就可以去部署到Tomcat的webapp下面了,放进去,重启Tomcat就OK。 1.开始搭建我的环境吧。首先,IDE我用的是e
3、clipse的JEE版本。要保证装上了Maven哟,可以使用eclipse的Install New Software,URL地址是/sites/m2e/,然后一步步走下去,安装好了过了会重启一次。给一个忠告哟,安装好了maven后,不要使用IDE里面的了,而是去官方下载一个,解压,然后让IDE的Maven指向你下载安装的,如图: 2.maven安装成功了,我们用Maven创建一个新的WEB项目。File> New> Other>Maven
4、 Project.选默认,下一步。在Select an Archetype里面种找到如下图所示 3.然后next,输入groupId:net.yuanmomo;artifactId:Test,然后finish,稍微等待一下,就创建好了。下面的是创建好了的一个初始的项目: 4.但是这个并不是默认的maven项目的标准结构.我们需要进行一些改动. (1).在项目下创建一个Source Folder.
5、; Folder Name:src/main/java 如下图所示:(当然,还可以添加用于junit测试的src/test/java和src/test/resources 不过在此就不添加了.)(2).在src/main/java中创建3个包(maven标准推荐是3层包结构)(3).如果装的JDK是1.6的,更改
6、JRE System Libary为1.6版本的.(4).就src/main/webapp文件夹看做一个的WebRoot,然后创建js,css,jsp等文件夹。这样.一个标准的maven web项目创建成功. 5.大家一看上面的项目结构,很熟悉吧。maven的项目结构路径有点讨厌,有点让人很烦。maven打WAR包的时候提取的东西是src/main/webapp下面的文件,然后打成一个WAR的WEB项目就可以部署了,但是,但是,我们在开发的时候,在使用eclipse里面的Tomcat调试的时候,tomcat却不是把src/main/w
7、ebapp下面的文件部署到服务器。此时,如果你打开Server,然后add and remove,你在左边是找不到Test项目的,如下:原因是因为Tomcat默认回去Test项目的路径下面去找WebRoot>WEB-INF->web.xml(WebRoot文件夹的名字可以不一样,可以使其它的,但是WEB-INF->web.xml这两个名字不能变),但是当前就找不到这几个目录。这个时候有两个解决办法:(5.1). 在Test项目的路径下面,按照路径规则创建WebRoot,WEB-INF等文件夹,然后把上面的web.xml拷贝到新建的WEB-INF中去。放心吧,我上一个项目就是这
8、样做的,不过这种方式打死都不可取的。你修改JSP的时候改的是下面的,maven打包的时候用的上面的。你还得拷贝过来,拷过去,麻烦,如果再有svn管理,累死你,晕死你,我们经常是调试编写的时候再下面做,最后提交的时候还得一个个拷贝上去,还出很多问题。所以建议采用第二种方式。(5.2).转换该项目:(1)在Test工程名上右键->Properties->Project Facets->Convet to faceted form,(2)勾上Dynamic Web Module,选择2.4版本。同时点击下方的further configuration available(3)将默认
9、的WebContent改成src/main/webapp(4)一路点OK.此时在server视图中的tomcat server上点右键->Add and Remove,就能看到该项目于,然后部署啦。至此,我们已经创建好了一个合格的基于Maven的项目,也可以在Tomcat中部署。接下来,我们开始整合我们的J2EE框架。6.先给出数据库的创建脚本,方便测试搭建是否成功。SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"- - 数据库: timesheet - CREATE DATABASE timesheet DEFA
10、ULT CHARACTER SET utf8 COLLATE utf8_bin; USE timesheet;- - - 表的结构 testtable -CREATE TABLE IF NOT EXISTS testtable ( id int(10) unsigned NOT NULL AUTO_INCREMENT, name varchar(50) COLLATE utf8_bin DEFAULT NULL, date timestamp NULL DEFAULT NULL, &
11、#160; PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1 ;7.在pom文件中添加必要的jar包的dependence,可以从两个地方查询:/添加后的pom文件如下:<project xmlns="/POM/4.0.0"xmlns:xsi="/2001/XMLSchema-instance&
12、quot; xsi:schemaLocation="/POM/4.0.0 /maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>net.yuanmomo</groupId> &
13、#160; <artifactId>Test</artifactId> <packaging>war</packaging> <version>0.0.1-SNAPSHOT</version> <name>Test Maven Webapp</name> <url>http:/maven.apach
14、</url> <!- 设置 Spring 的版本 -> <properties> <org.springframework.version>3.0.0.RELEASE</org.springframework.version> </properties>
15、 <dependencies> <!- 此处开始就是Spring 所有的jar了,spring3.0的jar包拆分了,所以很多 -> <!- Core utilities used by other modules. Define this if you use Spring
16、60; Utility APIs (org.springframework.core.*/org.springframework.util.*) -> <dependency> <groupId>org.springframework</groupId>
17、160; <artifactId>spring-core</artifactId> <version>$org.springframework.version</version> </depende
18、ncy> <!- Expression Language (depends on spring-core) Define this if you use Spring Expression APIs (org.springframework.expression.*) ->
19、0; <dependency> <groupId>org.springframework</groupId> <artifactId>spring-expression</artifactId>
20、; <version>$org.springframework.version</version> </dependency> <!- Bean Factory and JavaBeans utilities (depends on spring-core) Define
21、; this if you use Spring Bean APIs (org.springframework.beans.*) -> <dependency> <groupId>org.sprin
22、gframework</groupId> <artifactId>spring-beans</artifactId> <version>$org.springframework.version</version>
23、160; </dependency> <!- Aspect Oriented Programming (AOP) Framework (depends on spring-core, spring-beans) Define this if you use Spring AOP APIs (org.spr
24、ingframework.aop.*) -> <dependency> <groupId>org.springframework</groupId> <artifact
25、Id>spring-aop</artifactId> <version>$org.springframework.version</version> </dependency> <!- Application Con
26、text (depends on spring-core, spring-expression, spring-aop, spring-beans) This is the central artifact for Spring's Dependency Injection Container and
27、is generally always defined -> <dependency> <groupId>org.springframework</groupId> <
28、artifactId>spring-context</artifactId> <version>$org.springframework.version</version> </dependency> <!- Var
29、ious Application Context utilities, including EhCache, JavaMail, Quartz, and Freemarker integration Define this if you need any of these integrations -> <dependency>
30、 <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId>
31、60; <version>$org.springframework.version</version> </dependency> <!- Transaction Management Abstraction (depends on spring-core, spring-beans,
32、0; spring-aop, spring-context) Define this if you use Spring Transactions or DAO Exception Hierarchy (org.springframework.transaction.*/org.springframework.dao.*) ->
33、 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId>
34、60; <version>$org.springframework.version</version> </dependency> <!- JDBC Data Access Library (depends on spring-core, spring-be
35、ans, spring-context, spring-tx) Define this if you use Spring's JdbcTemplate API (org.springframework.jdbc.*) -> <dependency>
36、 <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>$org.sprin
37、gframework.version</version> </dependency> <!- Object-to-Relation-Mapping (ORM) integration with Hibernate, JPA, and iBatis
38、. (depends on spring-core, spring-beans, spring-context, spring-tx) Define this if you need ORM (org.springframework.orm.*) -> <dependency>
39、160; <groupId>org.springframework</groupId> <artifactId>spring-orm</artifactId> <version>$
40、org.springframework.version</version> </dependency> <!- Object-to-XML Mapping (OXM) abstraction and integration with JAXB,
41、JiBX, Castor, XStream, and XML Beans. (depends on spring-core, spring-beans, spring-context) Define this if you need OXM (org.springframework.oxm.*) -> <dependency> &
42、#160; <groupId>org.springframework</groupId> <artifactId>spring-oxm</artifactId>
43、0; <version>$org.springframework.version</version> </dependency> <!- Web application development utilities applicable to both Servlet and
44、0; Portlet Environments (depends on spring-core, spring-beans, spring-context) Define this if you use Spring MVC, or wish to use Struts, JSF, or another
45、0; web framework with Spring (org.springframework.web.*) -> <dependency> <groupId>org.springframework</groupId>
46、 <artifactId>spring-web</artifactId> <version>$org.springframework.version</version> </dependency>
47、0; <!- Spring MVC for Servlet Environments (depends on spring-core, spring-beans, spring-context, spring-web) Define this if you use Spring MVC with a Servlet &
48、#160; Container such as Apache Tomcat (org.springframework.web.servlet.*) -> <dependency> <groupId>org.springframework</groupId>&
49、#160; <artifactId>spring-webmvc</artifactId> <version>$org.springframework.version</version>
50、0; </dependency> <!- Spring MVC for Portlet Environments (depends on spring-core, spring-beans, spring-context, spring-web) Define this if you use Spring MVC with a Portlet
51、; Container (org.springframework.web.portlet.*) -> <dependency> <groupId>org.springframework</gr
52、oupId> <artifactId>spring-webmvc-portlet</artifactId> <version>$org.springframework.version</version>
53、0; </dependency> <!- Support for testing Spring applications with tools such as JUnit and TestNG This artifact is generally always defined with a 'test'
54、; scope for the integration testing framework and unit testing stubs -> <dependency> <groupId>
55、;org.springframework</groupId> <artifactId>spring-test</artifactId> <version>$org.springframework.version</version>
56、; <scope>test</scope> </dependency> <!- 上面的都是Spring的jar包,可以选择性的添加 -> <
57、;!- Mybatis 开发包 -> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybati
58、s-spring</artifactId> <version>1.1.1</version> </dependency> <!- Mybatis 和Spring的 整合包,是mybatis出的->
59、0; <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId>
60、; <version>3.1.1</version> </dependency> <!- tomcat servlet开发包 -> <de
61、pendency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId>
62、60; <version>1.2</version> </dependency> <!- JSTL标签库 -> <dependency>
63、0; <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version>&
64、#160; </dependency> <!- mysql的数据库驱动包 -> <dependency> <groupId>mysq
65、l</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.21</version> &
66、#160; </dependency> <!- 日志打印 log4j包 -> <dependency> <groupId>log4j</groupId>
67、160; <artifactId>log4j</artifactId> <version>1.2.14</version> <scope>runtime</sco
68、pe> </dependency> <!- 下面两个包 commons-dbcp,commons-pool 是配置数据源的包-> <dependency>
69、0; <groupId>commons-dbcp</groupId> <artifactId>commons-dbcp</artifactId> <version>1.4</version> &
70、#160; </dependency> <dependency> <groupId>commons-pool</groupId>
71、160; <artifactId>commons-pool</artifactId> <version>1.4</version> </dependency> <!- 日志记录依赖包,很多都依赖此包
72、,像log4j,json-lib等等 -> <dependency> <groupId>commons-logging</groupId> <artifactId>
73、;commons-logging-api</artifactId> <version>1.1</version> </dependency> <!- Spring 文件上传的包 ->
74、; <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifact
75、Id> <version>1.2.2</version> </dependency> <!- Spring 文件上传的依赖包 ->
76、0; <dependency> <groupId>mons</groupId> <artifactId>commons-io</artifactId>
77、60; <version>1.3.2</version> </dependency> <!- dom4j 解析 XML文件的包 -> <dependency>
78、; <groupId>dom4j</groupId> <artifactId>dom4j</artifactId> <version>1.6.1</v
79、ersion> </dependency> <!- 下面的三个包是在配置事务的时候用到的 spring的依赖包 -> <dependency>
80、0; <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>1.7.0</version>
81、; </dependency> <dependency> <groupId>aopalliance</groupId> &
82、#160; <artifactId>aopalliance</artifactId> <version>1.0</version> </dependency> <dependency&g
83、t; <groupId>cglib</groupId> <artifactId>cglib-nodep</artifactId>
84、160; <version>2.2.2</version> </dependency> <!- JSON lib 开发包 以及它的依赖包 -> <dependency>
85、 <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <classifier>jdk15</classifier
86、> <version>2.4</version> </dependency> <dependency>
87、 <groupId>commons-beanutils</groupId> <artifactId>commons-beanutils</artifactId> <version>1.8.3</version&
88、gt; </dependency> <dependency> <groupId>commons-collections</groupId>
89、60; <artifactId>commons-collections</artifactId> <version>3.2.1</version> </dependency>
90、60; <dependency> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId>
91、0; <version>2.6</version> </dependency> <dependency> <groupId&g
92、t;net.sf.ezmorph</groupId> <artifactId>ezmorph</artifactId> <version>1.0.5</version>
93、 </dependency> <!- junit 测试包 -> <dependency> <groupId>junit</groupId>
94、60; <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope>
95、; </dependency> </dependencies> <build> <finalName>Test</finalName> </build> </project&g
96、t;修改pom文件后,保存,maven会自动的去download这些jar包到本地。等待的时间可能会很长。上面我把所有我这次项目用到的包都罗列出来了,如果你用不到的,可以自行删除。下载完成过后,点开项目左侧的Maven Dependencies,你就能看到很多的下载的JAR包了。8. 修改web.xml,配置Spring,spring MVC,log4j,乱码处理等。<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi
97、="/2001/XMLSchema-instance" xmlns=" xmlns:web=" xsi:schemaLocation=" id="WebApp_ID" version="2.5"> <!- Spring context startup Spring的初始化-
98、> <context-param> <param-name>contextConfigLocation</param-name> <param-value><!- Spring的配置文件 -> cl
99、asspath:/com/comverse/timesheet/config/ApplicationContext.xml </param-value> </context-param> <listener> <listener-class>
100、; org.springframework.web.context.ContextLoaderListener </listener-class> </listener> <!- Spring character filter 处理乱码-> <filter&
101、gt; <filter-name>encodingFilter</filter-name> <filter-class> org.springframework.web.filter.CharacterEncodingFilter
102、; </filter-class> <init-param> <param-name>encoding</param-name>
103、160; <param-value>UTF-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-na
104、me> <url-pattern>/*</url-pattern> </filter-mapping> <!- Configuration of Log4j log4j的配置 -> <context-param>
105、; <param-name>log4jConfigLocation</param-name> <param-value><!- perties文件路径 -> classpath:/com/comverse/timesheet/config/perties
106、; </param-value> </context-param> <context-param> <param-name>log4jRefreshInterval</param-name> <param-value>
107、;60000</param-value> </context-param> <listener> <listener-class> org.springframework.web.util.Log4jConfigListener
108、 </listener-class> </listener> <!- Spring MVC Configuration Spring MVC的配置-> <servlet> <servlet-name>dispatcher</servlet-nam
109、e> <servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class> <ini
110、t-param> <param-name>contextConfigLocation</param-name> <param-value><!- dispatcher-servlet.xml文件路径 -> classpath:/com/comverse/timesheet/config/dispatcher-servlet.xml </param-value>
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030药品研究与开发行业系统研究市场分析前景规划核心发展方向发展优化投资策略文件
- 2026年厦门华天涉外职业技术学院单招职业适应性考试题库附参考答案详解(培优)
- 2026年南京旅游职业学院单招职业倾向性考试题库附参考答案详解ab卷
- 2026年内蒙古巴彦淖尔盟单招职业倾向性测试题库附答案详解(研优卷)
- 2026年南通职业大学单招职业倾向性测试题库带答案详解(综合题)
- 能源使用效率评估实施细则
- 2026年厦门华厦学院单招职业适应性测试题库及1套参考答案详解
- 2026年内蒙古丰州职业学院单招职业倾向性考试题库附参考答案详解(基础题)
- 服务协议2026年增强现实开发合同
- 2026年信阳学院单招职业适应性考试题库含答案详解(模拟题)
- 《传感器与检测技术》课件-热电阻测温传感器
- 2025年国家保安员资格考试模拟题库(附答案)
- 晋剧课件教学课件
- DB11∕T 2442-2025 学校食堂异物管控规范
- 流体仿真课件
- 幼儿园安全培训课程内容汇编
- 2026年山东理工职业学院单招职业技能测试题库及答案解析(名师系列)
- 前移式高位叉车培训课件
- 2025至2030超声波设备市场前景分析及行业项目调研及市场前景预测评估报告
- 污水处理站安全培训课件
- 中国的气候第三课时课件-八年级地理上学期湘教版
评论
0/150
提交评论