maven搭建SpringMVC+Hibernate+Freemarker工程

来源:互联网 发布:软件售后服务合同范本 编辑:程序博客网 时间:2024/06/05 09:41

pom.xml配置文件如下:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>attendance</groupId>
  <artifactId>attendance</artifactId>
  <packaging>war</packaging>
  <version>0.0.1-SNAPSHOT</version>
  <name>attendance Maven Webapp</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-webmvc</artifactId>
    <version>4.0.6.RELEASE</version>
    </dependency>
    <dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>2.3</version>
    </dependency>
    <dependency>
    <groupId>c3p0</groupId>
    <artifactId>c3p0</artifactId>
    <version>0.9.1.2-pbruski-7</version>
    </dependency>
    <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-tx</artifactId>
    <version>4.0.6.RELEASE</version>
    </dependency>
    <dependency>
    <groupId>commons-logging</groupId>
    <artifactId>commons-logging</artifactId>
    <version>1.1.1</version>
    </dependency>
    <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>org.springframework.orm</artifactId>
    <version>3.1.1.RELEASE</version>
    </dependency>
    <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>org.springframework.aop</artifactId>
    <version>3.1.1.RELEASE</version>
    </dependency>
    <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-hibernate2</artifactId>
    <version>4.0.6.RELEASE-atlassian-1</version>
    </dependency>
    <dependency>
    <groupId>dom4j</groupId>
    <artifactId>dom4j</artifactId>
    <version>1.6.1</version>
    </dependency>
    <dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate</artifactId>
    <version>3.2.5.ga</version>
    </dependency>
    <dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-c3p0</artifactId>
    <version>4.3.8.Final</version>
    </dependency>
    <dependency>
    <groupId>com.mysql.jdbc</groupId>
    <artifactId>com.springsource.com.mysql.jdbc</artifactId>
    <version>5.1.6</version>
    </dependency>
    <dependency>
    <groupId>commons-lang</groupId>
    <artifactId>commons-lang</artifactId>
    <version>2.4</version>
    </dependency>
    <dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.6.1</version>
    </dependency>
    <dependency>
    <groupId>org.freemarker</groupId>
    <artifactId>freemarker</artifactId>
    <version>2.3.19</version>
    </dependency>
    <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context-support</artifactId>
    <version>3.1.1.RELEASE</version>
    </dependency>
  </dependencies>
  <build>
    <finalName>attendance</finalName>
    <plugins>
    <plugin>
    <groupId>org.mortbay.jetty</groupId>
    <artifactId>maven-jetty-plugin</artifactId>
    <version>6.0.0</version>
    <configuration>
               <scanIntervalSeconds>5</scanIntervalSeconds>
            </configuration>
    </plugin>
    </plugins>
  </build>
</project>


其中spring-context-support.jar包用于freemarker和spring整合;在进行配置 

<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
<property name="templateLoaderPath" value="/WEB-INF"/>
<property name="freemarkerSettings">
<props>
<prop key="template_update_delay">0</prop>
<prop key="defaultEncoding">GBK</prop>
<prop key="url_escaping_charset">GBK</prop>
<prop key="locale">zh_CN</prop>
<prop key="boolean_format">true,false</prop>
<prop key="datetime_format">yyyy-MM-dd HH:mm:ss</prop>
<prop key="date_format">yyyy-MM-dd</prop>
<prop key="time_format">HH:mm:ss</prop>
<prop key="number_format">0.######</prop>
<prop key="whitespace_stripping">true</prop>
<prop key="auto_import">/tpl/spring.ftl as s</prop>
</props>
</property>
</bean>

时,如果没有导入spring-context-support包,将无法进行templateLoaderPath的配置和freemarkerSettings的配置

异常处理:

 Java compiler level does not match the version of the installed Java project facet.

处理方式:

1、项目右键->Preferences->buildpath->jdk;

2、.项目右键->Preferences->javacompiler->jdk版本;

3、项目右键->Preferences->ProjectFacets->jdk版本




下面我将用图文一步步讲解如果进行搭建一个springmvc+hibernate+freemarker工程

1、新建工程;选择"Maven Project" 新建一下maven工程;


2、选择工程所用的表空间;“Use default Workspace location” 可进行修改;


3、选择要创建的工程并选择下一步;我这里创建的是一个web工程,因此需要选择“maven-archetype-webapp”;如果一个项目需要多个人进行开发;因此需要创建site工程;这个工程允许多个工程组合形成一个工程;


4、输入要创建的工程名称及工程标识;group id为工程标识,maven通过group id检索相关项目;artifact id为工程名称;version 为版本号;pageage 为包名


注:如果点击完成出现 这个错误信息,表示工程已经存在;需要修改工程名;


5、工程创建完成后,目录结构如下;并有一个错误;错误信息为:The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path;这个错误表示系统没有引用servlet包;因此无法正常编译index.jsp;因此我们需要进行第 六步操作;



6、打开pom.xml文件;会出现如下图所示的maven工程的基本信息



在最下面的选项卡中选择Dependencies选项卡;出现下图:


点击左边栏目中的“add”按钮;并在“Enter groupId ,artifactId or sha1 prefix or pattern(*);后面的选项卡中;输入servlet-api; maven即搜索servlet-api相关的jar包;选择对应的jar包点击OK即可;保存pom.xml后,错误即取消。

7、搭建springmvc工程需要引入spring相关的包;其他包的导入方式和servlet-api包的引入方式相同;

我这里分别引入了 spring-webmvc、c3p0、spring-tx、commons-logging、springframework.orm、springframework.aop、spring-hibernate2、dom4j、hibernate、hibernate-c3p0、commons-lang、slf4j-api、freemarker、spring-context-support

0 0
原创粉丝点击