InterlliJ IDEA搭建一個完整的ssh框架
使用InterlliJ IDEA搭建一個完整的ssh框架**
當然,在使用之前我的InterlliJ IDEA 是配置了maven的,Maven環境配置及idea建Maven工程 可以去參考一下。
其他不多說進入正題,
一、建立一個新的工程
選擇maven,注意這裡會有兩個webapp的模板,我們選擇下面一個, 建立現有的webapp模板
GroupID和ArtifactID
GroupID是專案組織唯一的識別符號,實際對應JAVA的包的結構,是main目錄裡java的目錄結構。
ArtifactID就是專案的唯一的識別符號,實際對應專案的名稱,就是專案根目錄的名稱。
一般GroupID就是填 (com.xxx.專案名)
選擇maven版本 ,根據你自己的配置,我的是maven-3.5.4的
工程建立完畢,等待下載maven
在main資料夾下新建一個java資料夾,設定為sourceRoot型別 ,還需要建一個resources資料夾。
到這裡,專案基本結構搭建完成。下面就是新增依賴 struts2,hibernate,spring的依賴了。
<!-- spring-context -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>5.1.0.RELEASE</version>
</dependency>
<!-- spring-web -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>5.1.0.RELEASE</version>
</dependency>
<!--spring-jdbc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>5.1.0.RELEASE</version>
</dependency>
<!-- spring-orm -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>5.1.0.RELEASE</version>
</dependency>
<!-- aop面向切面依賴的jar包 -->
<!-- aspectjrt -->
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.9.1</version>
</dependency>
<!-- aspectjweaver -->
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.9.1</version>
</dependency>
<!-- hibernate依賴 -->
<!-- hibernate核心依賴 -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.2.17.Final</version>
</dependency>
<!-- mysql資料庫驅動依賴 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
<!-- c3p0連線池 -->
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.5.2</version>
</dependency>
<!-- struts2依賴 -->
<!-- struts2 -->
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.3.35</version>
</dependency>
<!-- struts2-spring-plugin整合spring和struts2 -->
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-spring-plugin</artifactId>
<version>2.3.35</version>
</dependency>
<!-- servlet api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>javax.servlet.jsp-api</artifactId>
<version>2.3.1</version>
<scope>provided</scope>
</dependency>
<!-- lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.0</version>
<scope>provided</scope>
</dependency>
<!-- jstl -->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>taglibs</groupId>
<artifactId>standard</artifactId>
<version>1.1.2</version>
</dependency>
在resources資料夾下建立
applicationContext.xml 內容 :
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:context="http://www.springframework.org/schema/context"
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.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
<!-- 匯入資原始檔 -->
<import resource="spring-jdbc.xml"/>
jdbc.properties 內容:
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.jdbcUrl=jdbc:mysql://localhost:3306/test?characterEncoding=utf-8
jdbc.user=root
jdbc.password=123456
連線池中保留的最小連線數
jdbc.minPoolSize=1
連線池中保留的最大連線數
jdbc.maxPoolSize=20
初始化連線數
jdbc.initialPoolSize=1
spring-jdbc.xml 內容:
<?xml version="1.0" encoding="UTF-8"?>
<!-- 引入資原始檔 -->
<context:property-placeholder location="classpath:jdbc.properties"/>
<!-- 資料來源連線池 -->
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="driverClass" value="${jdbc.driverClass}"></property>
<property name="jdbcUrl" value="${jdbc.jdbcUrl}"></property>
<property name="user" value="${jdbc.user}"></property>
<property name="password" value="${jdbc.password}"></property>
<property name="minPoolSize" value="${jdbc.minPoolSize}"></property>
<property name="maxPoolSize" value="${jdbc.maxPoolSize}"></property>
<property name="initialPoolSize" value="${jdbc.initialPoolSize}"></property>
</bean>
<!-- sessionFactory 會話工廠-->
<bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
<!-- 資料來源 -->
<property name="dataSource" ref="dataSource" />
<!-- hibernate對映檔案 -->
<property name="mappingResources">
<list>
<value></value>
</list>
</property>
<!-- hibernate屬性 -->
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.hbm2ddl.auto">update</prop>
</props>
</property>
</bean>
<!-- basedao -->
<bean id="baseDao" class="com.yujun.maven.ssh.dao.BaseDao">
<property name="factory" ref="sessionFactory"/>
</bean>
<!-- 配置事務 -->
<!-- 事務管理器 -->
<bean id="transactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager">
<!-- 會話工廠 -->
<property name="sessionFactory" ref="sessionFactory" />
</bean>
<!-- aop切入事務管理 -->
<aop:config>
<!-- 切入點 -->
<aop:pointcut expression="execution(* com.yujun.maven.ssh.service..*.*(..))" id="tranPointcut"/>
<!-- 建議 -->
<aop:advisor advice-ref="tranAdvice" pointcut-ref="tranPointcut"/>
</aop:config>
<!-- 事務建議 -->
<tx:advice id="tranAdvice" transaction-manager="transactionManager">
<tx:attributes>
<!-- 方法:以xxx開頭,提供事務支援 -->
<tx:method name="add*" propagation="REQUIRED"/>
<tx:method name="update*" propagation="REQUIRED"/>
<tx:method name="delete*" propagation="REQUIRED"/>
<tx:method name="query*" read-only="true"/>
<tx:method name="*" read-only="true"/>
</tx:attributes>
</tx:advice>
</beans>
struts.xml 檔案
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<!-- 開啟動態方法呼叫 -->
<constant name="struts.enable.DynamicMethodInvocation" value="true" />
<!-- 開啟除錯模式,修改了struts程式碼,不用重啟 -->
<constant name="struts.devMode" value="true" />
<package name="default" namespace="/" extends="struts-default">
</package>
最後把web.xml 配置一下就ok了。
web.xml 內容:
<?xml version="1.0" encoding="UTF-8"?> ssh <!-- 上下文監聽器 -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<!-- 多個配置檔案,使用逗號隔開 -->
<param-value>classpath:applicationContext.xml</param-value>
</context-param>
<!-- struts2核心過濾器,過濾所有的請求 -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>list.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
</web-app>
這樣一個maven,ssh開框架就完成了
作者:李陸喜
來源:CSDN
原文:https://blog.csdn.net/weixin_43783718/article/details/84455650
版權宣告:本文為博主原創文章,轉載請附上博文連結!
相關文章
- 用IDEA搭建SSM框架IdeaSSM框架
- Idea快速搭建一個springbootWeb專案IdeaSpring BootWeb
- 開源一個功能完整的SpringBoot專案框架Spring Boot框架
- 手把手教你搭建SSH框架(Eclipse版)框架Eclipse
- Vue環境搭建(使用完整框架)Vue框架
- 一個wpf專案的搭建prism框架mvvm框架MVVM
- 從0搭建一個實用的MVVM框架MVVM框架
- 如何搭建一個REACT全家桶框架React框架
- 如何搭建一個功能複雜的前端配置化框架(一)前端框架
- 運用MVP框架寫一個完整的請求(RegisterActivity為例)MVP框架
- 搭建一個簡易框架 3秒建立一個WebApi介面框架WebAPI
- 基於Idea從零搭建一個最簡單的vue專案IdeaVue
- MVVM框架的搭建(一)——背景MVVM框架
- 一個快速使用IDEA的方法Idea
- node之搭建一個http完整的靜態伺服器(命令列工具)HTTP伺服器命令列
- 《從 0 到 1:搭建一個完整的 Kubernetes 叢集》實踐踩坑
- 帶你從0搭建一個Springboot+elasticsearch+canal的完整專案 - dailyhubSpring BootElasticsearchAI
- 實現一個完整的promisePromise
- 一個完整的scrapy 專案
- IDEA使用maven搭建SSM框架整合專案(超級詳細,值得一看)IdeaMavenSSM框架
- XGoServer —- 一個基礎性、模組完整且安全可靠的服務端框架GoServer服務端框架
- [轉]SSH框架簡介框架
- 【SSH框架】系列之 Spring 整合 Hibernate 框架框架Spring
- 一個完整的COM通訊類
- 一個完整的go 日誌元件Go元件
- 關於快速開發框架:網紅妹紙,給了我一個idea!框架Idea
- SSH框架下的分頁查詢框架
- Idea:一個正確配置Idea
- 使用idea搭建springMVCIdeaSpringMVC
- 一個小白的vue之路(四)——搭建自己的後臺管理開發框架(1)Vue框架
- vue+vux-ui+axios+mock搭建一個簡單vue框架VueUXUIiOSMock框架
- 如何快速搭建一個功能齊全中後臺前端框架?前端框架
- 一個C#開發者用Java搭建Android框架的心路歷程C#JavaAndroid框架
- 搭建一個基於swoole的http框架來跑跑curd用作效能測試HTTP框架
- 一個clean框架的demo框架
- 一個完整的RNA-seq分析pipeline
- 一個完整的軟體研發流程
- 從零搭建自己的Vue管理端框架(一)Vue框架