如何快速的搭建一個maven+springmvc的專案,適合小白易懂,進來看看
阿新 • • 發佈:2019-01-05
第2步:
第3步:
第4步:
建立完成之後點選專案右鍵選擇java EE Tools 選擇第二個建立web.xml
第5步:
開啟pom.xml進行新增依賴
<!-- 統一版本號 --> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <spring.version>4.1.7.RELEASE</spring.version> <mybatis.version>3.4.5</mybatis.version> </properties> <dependencies> <!-- spring依賴 --> <!-- 核心包 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring.version}</version> </dependency> <!-- pring IOC的基礎實現,包含訪問配置檔案、建立和管理bean等 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>${spring.version}</version> </dependency> <!-- 這個jar檔案為Spring核心提供了大量擴充套件。可以找到使用Spring ApplicationContext特性時所需的全部類,JDNI所需的全部類,UI方面的用來與模板(Templating)引擎如Velocity、FreeMarker、JasperReports整合的類,以及校驗Validation方面的相關類。 --> <!-- Spring 擴充套件服務 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${spring.version}</version> </dependency> <!-- 為JDBC、Hibernate、JDO、JPA等提供的一致的宣告式和程式設計式事務管理 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>${spring.version}</version> </dependency> <!-- 這個jar檔案包含在應用中使用Spring的AOP特性時所需的類。使用基於AOP的Spring特性,如宣告型事務管理(Declarative Transaction Management),也要在應用裡包含這個jar包。 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aop</artifactId> <version>${spring.version}</version> </dependency> <!-- 提供對AspectJ的支援,以便可以方便的將面向方面的功能整合進IDE中,比如Eclipse AJDT。 外部依賴。 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-aspects</artifactId> <version>${spring.version}</version> </dependency> <!-- springmvc依賴 --> <!-- 這個jar檔案包含Spring MVC框架相關的所有類。包含國際化、標籤、Theme、檢視展現的FreeMarker、JasperReports、Tiles、Velocity、XSLT相關類。當然,如果你的應用使用了獨立的MVC框架,則無需這個JAR檔案裡的任何類。 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> </dependency> <!-- web依賴 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>${spring.version}</version> </dependency> <!-- jdbc支援包 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${spring.version}</version> </dependency> <!--mysql驅動包--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.35</version> </dependency> <!-- mybatis核心包 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>${mybatis.version}</version> </dependency> <!-- 新增mybatis與Spring整合的核心包 --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.3.1</version> </dependency> <!-- JSON-lib解析json字串--> <dependency> <groupId>net.sf.json-lib</groupId> <artifactId>json-lib</artifactId> <version>2.4</version> <classifier>jdk15</classifier> </dependency> <!-- servlet相關介面--> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency> <!-- jstl標籤庫 --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> <scope>runtime</scope> </dependency> <!-- 日誌檔案 --> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> </dependencies> <build> <!-- jdk版本問題 --> <plugins> <plugin> <artifactId>ceshi_01</artifactId> <version>3.5.1</version> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> <!-- Embedded Apache Tomcat required for testing war --> <!-- tomcat --> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> <configuration> <port>8080</port> <path>/</path> </configuration> </plugin> </plugins> </build>
然後右鍵maven進行update project注意這個進行打鉤,因為可能會更新一下你的本地倉庫將新的依賴新增進去
第六步:配置jdbc.properties書寫一些資料庫
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/sss?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
jdbc.username=root
jdbc.password=root
第六步:配置資料庫連線資訊,和springmvc的一些配置 spring-mybatis.xml
<?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:p="http://www.springframework.org/schema/p" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.3.xsd"> <!-- 引入db.properties屬性檔案 --> <context:property-placeholder location="classpath:jdbc.properties" /> <!--定義一個jdbc資料來源,建立一個驅動管理資料來源的bean --> <bean id="jdbcDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverClassName" value="${jdbc.driver}" /> <property name="url" value="${jdbc.url}" /> <property name="username" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" /> </bean> <!--建立一個sql會話工廠bean,指定資料來源 --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <!-- 指定資料來源 --> <property name="dataSource" ref="jdbcDataSource" /> <!--類型別名包,引入com.lmei.ssm.entity下的所有類 --> <property name="typeAliasesPackage" value="com.qzs.dto.*"></property> <!--指定sql對映xml檔案的路徑 --> <property name="mapperLocations" value="classpath:/com/qzs/dao/*/*.xml"></property> </bean> <!--自動掃描對映介面--> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <!-- 指定sql會話工廠,在上面配置過的 --> <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property> <!-- 指定基礎包,即自動掃描com.qzs這個包下的所有介面類 --> <property name="basePackage" value="com.qzs.dao.*"></property> </bean> <!-- 建立一個sqlSession物件 --> <bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate"> <constructor-arg index="0" ref="sqlSessionFactory" /> </bean> <!--自動掃描元件 --> <context:component-scan base-package="com.qzs"> <context:exclude-filter type="aspectj" expression="com.qzs.service.*"/> </context:component-scan> <aop:aspectj-autoproxy proxy-target-class="true"></aop:aspectj-autoproxy> </beans>
第七步:配置springContext.xml
<?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:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.2.xsd
http://www.springframework.org/schema/mvc
http://www.springframework.org/schema/mvc/spring-mvc.xsd">
<!-- 搜尋spring控制元件 -->
<context:component-scan base-package="com.qzs"></context:component-scan>
<!-- 開啟springMVC的註解驅動,使得url可以對映到對應的controller -->
<mvc:annotation-driven />
<!-- 檢視頁面配置 -->
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix">
<value>/WEB-INF/jsp/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>
</beans>
第八步:配置web.xml
<!-- 配置springmvc核心控制器 -->
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springContext.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.action</url-pattern>
</servlet-mapping>
<!-- Spring容器啟動監聽器 -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring-mybatis.xml</param-value>
</context-param>
下面是一些依賴的作用,不是很全面
(1) spring-core.jar
這個jar檔案包含Spring框架基本的核心工具類,Spring其它元件要都要使用到這個包裡的類,是其它元件的基本核心,當然你也可以在自己的應用系統中使用這些工具類。
(2) spring-beans.jar
這個jar檔案是所有應用都要用到的,它包含訪問配置檔案、建立和管理bean以及進行Inversion of Control / Dependency Injection(IoC/DI)操作相關的所有類。如果應用只需基本的IoC/DI支援,引入spring-core.jar及spring-beans.jar檔案就可以了。
(3) spring-aop.jar
這個jar檔案包含在應用中使用Spring的AOP特性時所需的類。使用基於AOP的Spring特性,如宣告型事務管理(Declarative Transaction Management),也要在應用裡包含這個jar包。
(4) spring-context.jar
這個jar檔案為Spring核心提供了大量擴充套件。可以找到使用Spring ApplicationContext特性時所需的全部類,JDNI所需的全部類,UI方面的用來與模板(Templating)引擎如Velocity、FreeMarker、JasperReports整合的類,以及校驗Validation方面的相關類。
(5) spring-dao.jar
這個jar檔案包含Spring DAO、Spring Transaction進行資料訪問的所有類。為了使用宣告型事務支援,還需在自己的應用裡包含spring-aop.jar。
(6) spring-hibernate.jar
這個jar檔案包含Spring對Hibernate 2及Hibernate 3進行封裝的所有類。
(7) spring-jdbc.jar
這個jar檔案包含對Spring對JDBC資料訪問進行封裝的所有類。
(8) spring-orm.jar
這個jar檔案包含Spring對DAO特性集進行了擴充套件,使其支援 iBATIS、JDO、OJB、TopLink,因為Hibernate已經獨立成包了,現在不包含在這個包裡了。這個jar檔案裡大部分的類都要依賴spring-dao.jar裡的類,用這個包時你需要同時包含spring-dao.jar包。
(9) spring-remoting.jar
這個jar檔案包含支援EJB、JMS、遠端呼叫Remoting(RMI、Hessian、Burlap、Http Invoker、JAX-RPC)方面的類。
(10) spring-support.jar
這個jar檔案包含支援快取Cache(ehcache)、JCA、JMX、郵件服務(Java Mail、COS Mail)、任務計劃Scheduling(Timer、Quartz)方面的類。
(11) spring-web.jar
這個jar檔案包含Web應用開發時,用到Spring框架時所需的核心類,包括自動載入WebApplicationContext特性的類、Struts與JSF整合類、檔案上傳的支援類、Filter類和大量工具輔助類。
(12) spring-webmvc.jar
這個jar檔案包含Spring MVC框架相關的所有類。包含國際化、標籤、Theme、檢視展現的FreeMarker、JasperReports、Tiles、Velocity、XSLT相關類。當然,如果你的應用使用了獨立的MVC框架,則無需這個JAR檔案裡的任何類。
(13) spring-mock.jar
這個jar檔案包含Spring一整套mock類來輔助應用的測試。Spring測試套件使用了其中大量mock類,這樣測試就更加簡單。模擬HttpServletRequest和HttpServletResponse類在Web應用單元測試是很方便的。
這樣一個簡單的maven+springmvc框架的web專案就搭建成功了,還請大家多多點評。希望能夠幫到大家,謝謝。