`

maven之ssh项目搭建

    博客分类:
  • ssh
阅读更多

1:新建maven-archetupe-webapp项目

2:web.xml配置文件如下

<?xml version="1.0" encoding="UTF-8"?> 
<web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

 

<!-- springmvc 上下文监听器 ContextLoaderListener -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/*.xml</param-value>
</context-param>
<!-- springmvc 上下文监听器 ContextLoaderListener-->
<!-- struts过滤器 -->
<filter> 
<filter-name>SSH</filter-name> 
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> 
</filter> 

<filter-mapping> 
<filter-name>SSH</filter-name> 
<url-pattern>/*</url-pattern> 
</filter-mapping> 
<!-- struts过滤器 -->
<!-- 过滤器 -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- 过滤器 -->
<display-name>spring-ssh</display-name>
</web-app>

3:struts.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>  
  
    <!-- 请求参数的编码方式--> 

    <constant name="struts.i18n.encoding" value="UTF-8"/> 

    <!-- 指定被struts2处理的请求后缀类型。多个用逗号隔开--> 

    <constant name="struts.action.extension" value="action,do,htm,html"/> 

    <!-- 当struts.xml改动后,是否重新加载。默认值为false(生产环境下使用),开发阶段最好打开  --> 

    <constant name="struts.configuration.xml.reload" value="true"/> 

    <!-- 是否使用struts的开发模式。开发模式会有更多的调试信息。默认值为false(生产环境下使用),开发阶段最好打开  --> 

    <constant name="struts.devMode" value="false"/>   

    <!-- 设置浏览器是否缓存静态内容。默认值为true(生产环境下使用),开发阶段最好关闭  --> 

    <constant name="struts.serve.static.browserCache" value="false" /> 

    <!-- 指定由spring负责action对象的创建      --> 

    <constant name="struts.objectFactory" value="spring" /> 
    
    <!-- 
        不用注解模式
     <package name="book" namespace="/" extends="struts-default">  
        <action name="login" class="struts2.LoginAction" method="login">  
            <result name="success">../views/login.jsp</result>  
        </action>  
    </package>  
     -->

    <!-- 是否开启动态方法调用--> 

    <constant name="struts.enable.DynamicMethodInvocation" value="false"/>
  
</struts>  

4:spring.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:util="http://www.springframework.org/schema/util"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xmlns:mvc="http://www.springframework.org/schema/mvc"
    xmlns:aop="http://www.springframework.org/schema/aop"
    xsi:schemaLocation="http://www.springframework.org/schema/aop
        http://www.springframework.org/schema/aop/spring-aop-3.2.xsd
        http://www.springframework.org/schema/mvc
        http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd
        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/util 
        http://www.springframework.org/schema/util/spring-util-3.2.xsd
        http://www.springframework.org/schema/tx 
        http://www.springframework.org/schema/tx/spring-tx-3.2.xsd"
        default-lazy-init="true">
    
    
    <mvc:annotation-driven />
    <context:component-scan base-package="com.xiaoji.ssh">  
           <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>  
           <context:include-filter type="annotation" expression="org.springframework.web.bind.annotation.ControllerAdvice"/>  
    </context:component-scan> 
    
    <context:property-placeholder location="classpath:property/jdbc.properties"/>    
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" destroy-method="close">
        <property name="driverClass" value="${database.driverClassName}" />
        <property name="jdbcUrl" value="${database.url}" />
        <property name="user" value="${database.username}" />
        <property name="password" value="${database.password}" />
           <!--连接池中保留的最大连接数。默认值: 15 -->   
        <property name="maxPoolSize" value="20"/>  
        <!-- 连接池中保留的最小连接数,默认为:3-->  
        <property name="minPoolSize" value="2"/>  
        <!-- 初始化连接池中的连接数,取值应在minPoolSize与maxPoolSize之间,默认为3-->  
        <property name="initialPoolSize" value="2"/>  
        <!--最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。默认值: 0 -->   
        <property name="maxIdleTime" value="60"/>
        <!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。默认值: 3 -->   
         <property name="acquireIncrement" value="2"/>  
        <!--定义在从数据库获取新连接失败后重复尝试的次数。默认值: 30 ;小于等于0表示无限次-->   
         <property name="acquireRetryAttempts" value="0"/>  
         <!--重新尝试的时间间隔,默认为:1000毫秒-->   
         <property name="acquireRetryDelay" value="1000" />  
         <!--如果为false,则获取连接失败将会引起所有等待连接池来获取连接的线程抛出异常,但是数据源仍有效保留,并在下次调用getConnection()的时候继续尝试获取连接。如果设为true,那么在尝试获取连接失败后该数据源将申明已断开并永久关闭。默认: false-->   
         <property name="breakAfterAcquireFailure" value="false"/>  
    </bean>
    
    <!--定义Hibernate的SessionFactory -->  
    <!-- SessionFactory使用的数据源为上面的数据源 -->  
    <!-- 指定了Hibernate的映射文件和配置信息 -->  
    <bean id="sessionFactory"  
        class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">  
        <property name="dataSource" ref="dataSource"/> 
         <property name="annotatedClasses">  
             <list>  
               <value>com.xiaoji.ssh.entity.Book</value>  
             </list>  
        </property>  
        <property name="annotatedPackages">
            <list>
                <value>com.xiaoji.ssh.entity</value>
            </list>
        </property>
        <property name="hibernateProperties">  
            <props>  
                <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>  
                <prop key="show_sql">true</prop>  
                <prop key="hibernate.jdbc.batch_size">20</prop>  
            </props>  
        </property>  
    </bean>  
  
    <bean id="transactionManager"  
        class="org.springframework.orm.hibernate3.HibernateTransactionManager">  
        <property name="sessionFactory" ref="sessionFactory" />  
    </bean>  
  <!-- 
  REQUIRED:支持当前事务,如果当前没有事务,就新建一个事务。这是最常见的选择。 
    SUPPORTS:支持当前事务,如果当前没有事务,就以非事务方式执行。 
    MANDATORY:支持当前事务,如果当前没有事务,就抛出异常。 
    REQUIRES_NEW:新建事务,如果当前存在事务,把当前事务挂起。 
    NOT_SUPPORTED:以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。 
    NEVER:以非事务方式执行,如果当前存在事务,则抛出异常。 
    NESTED:支持当前事务,如果当前事务存在,则执行一个嵌套事务,如果当前没有事务,就新建一个事务。 
   -->
  <tx:advice id="txAdvice" transaction-manager="transactionManager">
        <tx:attributes>
            <tx:method name="add*" propagation="REQUIRED" />
            <tx:method name="delete*" propagation="REQUIRED" />
            <tx:method name="update*" propagation="REQUIRED" />
            <tx:method name="save*" propagation="REQUIRED" />
            <!-- <tx:method name="*" propagation="true" />-->
          </tx:attributes>
  </tx:advice>
  
  <aop:config>
        <aop:pointcut id="allManagerMethod"
            expression="execution(* com.xiaoji.ssh.service.*.*(..))" />
        <aop:advisor advice-ref="txAdvice"
            pointcut-ref="allManagerMethod" />
  </aop:config>
  
  <bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
      <property name="sessionFactory" ref="sessionFactory" />
 </bean> 
    
</beans>    

 

 

5:jdbc.properties代码如下

#c3p0jdbc
database.driverClassName=com.mysql.jdbc.Driver
database.url=jdbc:mysql://127.0.0.1:3306/springtest?useUnicode=true&characterEncoding=UTF-8
database.username=root
database.password=root

 

6:sql建表

CREATE TABLE `book` (
  `book_id` int(11) NOT NULL auto_increment,
  `name` varchar(50) default NULL,
  `description` varchar(100) default NULL,
  PRIMARY KEY  (`book_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

7:创建entity,使用hibernate-jpa注解实现数据层

package com.xiaoji.ssh.entity;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.Table;

/**
 * Book entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "book", catalog = "springtest")
public class Book implements java.io.Serializable {

    // Fields

    private Integer bookId;
    private String name;
    private String description;

    // Constructors

    /** default constructor */
    public Book() {
    }

    /** full constructor */
    public Book(String name, String description) {
        this.name = name;
        this.description = description;
    }

    // Property accessors
    @Id
    @GeneratedValue(strategy = IDENTITY)
    @Column(name = "book_id", unique = true, nullable = false)
    public Integer getBookId() {
        return this.bookId;
    }

    public void setBookId(Integer bookId) {
        this.bookId = bookId;
    }

    @Column(name = "name", length = 50)
    public String getName() {
        return this.name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Column(name = "description", length = 100)
    public String getDescription() {
        return this.description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

}

 

8:创建dao

接口:

package com.xiaoji.ssh.dao;

import java.util.List;

import com.xiaoji.ssh.entity.Book;


public interface BookDao{

    public List<Book> getBookList();
    
    public void saveBook(Book book);
    
    public void deleteBook(int bookId);
    
    public void updateBook(Book book);
    
    public Book getBookByBookId(int bookId);
}

 

实现类:

package com.xiaoji.ssh.dao.impl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.orm.hibernate3.HibernateTemplate;
import org.springframework.stereotype.Repository;

import com.xiaoji.ssh.dao.BookDao;
import com.xiaoji.ssh.entity.Book;


@Repository
public class BookDaoImpl  implements BookDao {
    
    private HibernateTemplate hibernateTemplate;
    
    public HibernateTemplate getHibernateTemplate() {
        return hibernateTemplate;
    }
    @Autowired
    public void setHibernateTemplate(HibernateTemplate hibernateTemplate) {
        this.hibernateTemplate = hibernateTemplate;
    }

    public List<Book> getBookList() {
        List<Book> list = (List<Book>)getHibernateTemplate().find("From Book");
        return list;
    }

    public void saveBook(Book book) {
        getHibernateTemplate().save(book);
        
    }

    public void deleteBook(int bookId) {
        getHibernateTemplate().delete(getBookByBookId(bookId));
        
    }

    public void updateBook(Book book) {
        // TODO Auto-generated method stub
        getHibernateTemplate().update(book);
    }

    public Book getBookByBookId(int bookId) {
        Book book = (Book)getHibernateTemplate().get(Book.class, bookId);
        return book;
    }
    

}

 

9:创建service

接口:

package com.xiaoji.ssh.service;

import java.util.List;

import com.xiaoji.ssh.entity.Book;

public interface BookService {
public List<Book> getBookList();
    
    public void saveBook(Book book);
    
    public void deleteBook(int bookId);
    
    public void updateBook(Book book);
    
    public Book getBookByBookId(int bookId);
}

 

实现类:

package com.xiaoji.ssh.service.impl;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.xiaoji.ssh.dao.BookDao;
import com.xiaoji.ssh.entity.Book;
import com.xiaoji.ssh.service.BookService;

@Service
public class BookServiceImpl implements BookService{

    @Autowired
    private BookDao bookDao;

    @Override
    public List<Book> getBookList() {
        return bookDao.getBookList();
    }

    @Override
    public void saveBook(Book book) {
        bookDao.saveBook(book);        
    }

    @Override
    public void deleteBook(int bookId) {
        bookDao.deleteBook(bookId);
    }

    @Override
    public void updateBook(Book book) {
        bookDao.updateBook(book);        
    }

    @Override
    public Book getBookByBookId(int bookId) {
        return bookDao.getBookByBookId(bookId);
    }
    
    
}

10:action类源码如下

package com.xiaoji.ssh.action;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.ExceptionMapping;
import org.apache.struts2.convention.annotation.ExceptionMappings;
import org.apache.struts2.convention.annotation.Namespace;
import org.apache.struts2.convention.annotation.ParentPackage;
import org.apache.struts2.convention.annotation.Result;
import org.apache.struts2.convention.annotation.Results;

import com.opensymphony.xwork2.ActionSupport;

/** 

 * Struts2基于注解的Action配置

 *  ParentPackage 继承父包
 *  Namespace命名空间
 *  Results跳转页面
 *  Action访问方法
 */   

@ParentPackage("struts-default") 

@Namespace("/book") 

@Results( { @Result(name = "success", location = "/views/main.jsp"), 

        @Result(name = "error", location = "/views/error.jsp") }) 

@ExceptionMappings( { @ExceptionMapping(exception = "java.lange.RuntimeException", result = "error") }) 
public class BookAction extends ActionSupport{
    private String username;
    
    
    public String getUsername() {
        return username;
    }


    public void setUsername(String username) {
        this.username = username;
    }


    @Action(value="test")
    public String test(){
        this.setUsername("strutsTest");
        return SUCCESS;
    }
    
    
    @Action(value = "bookView", results = { @Result(name = "success", location = "/index.jsp") })  
    public String bookView(){
        return SUCCESS;
    }
}

11: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>com.xiaoji.ssh</groupId>
  <artifactId>spring-ssh</artifactId>
  <packaging>war</packaging>
  <version>0.0.1-SNAPSHOT</version>
  <name>spring-ssh Maven Webapp</name>
  <url>http://maven.apache.org</url>
  
   <properties>
      <spring.version>3.2.8.RELEASE</spring.version>    
      <jdk.version>1.6</jdk.version>
      <hibernate.version>3.5.4-Final</hibernate.version>
  </properties>
  
  <dependencies>
  
    <!-- spring -->
     <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>${spring.version}</version>
     </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-test</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-web</artifactId>
        <version>${spring.version}</version>
    </dependency>
        <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-tx</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>org.aspectj</groupId>
        <artifactId>aspectjweaver</artifactId>
        <version>1.7.4</version>
    </dependency>
     <!-- spring -->
     <!-- hibernate -->
     <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>3.5.4-Final</version>
    </dependency>
     <dependency>
        <groupId>org.hibernate.javax.persistence</groupId>
        <artifactId>hibernate-jpa-2.1-api</artifactId>
        <version>1.0.0.Final</version>
    </dependency>
    <dependency>
    <groupId>springframework</groupId>
    <artifactId>spring-hibernate</artifactId>
    <version>1.2.6</version>
</dependency>
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-annotations</artifactId>
    <version>3.5.4-Final</version>
</dependency>
     <!-- 连接池包 -->
  <dependency>
    <groupId>c3p0</groupId>
    <artifactId>c3p0</artifactId>
    <version>0.9.1.2</version>
    </dependency>
<!-- 链接池包 -->
    <!--hibernate  -->
    <!--struts  -->
    <dependency>
        <groupId>org.apache.struts</groupId>
        <artifactId>struts2-core</artifactId>
        <version>2.3.16</version>
    </dependency>
    <dependency>
        <groupId>org.apache.struts</groupId>
        <artifactId>struts2-spring-plugin</artifactId>
        <version>2.3.16</version>
    </dependency>
    <dependency>
        <groupId>org.apache.struts</groupId>
        <artifactId>struts2-convention-plugin</artifactId>
        <version>2.3.16</version>
    </dependency>
    <dependency>  
            <groupId>javassist</groupId>  
            <artifactId>javassist</artifactId>  
            <version>3.12.1.GA</version>  
    </dependency>
    <dependency> 
        <groupId>com.sun</groupId>
        <artifactId>tools</artifactId>
        <version>1.5.0</version>
    </dependency>
    <!--struts  -->
    <!-- jsp  servlet -->
   <dependency>
        <groupId>org.apache.tomcat</groupId>
        <artifactId>jsp-api</artifactId>
        <version>6.0.41</version>
    </dependency>
  <!-- jsp  servlet --> 
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>
    <dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>1.7.5</version>
</dependency>
  <!-- mysql -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.30</version>
    </dependency>
  <!-- mysql -->
  </dependencies>
  <build>
      <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
              <source>${jdk.version}</source>
              <target>${jdk.version}</target>
            </configuration>
          </plugin>
      </plugins>
  </build>
</project>

 

12:忘记了还有个测试类

package com.xiaoji.ssh.dao;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

import com.xiaoji.ssh.entity.Book;

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"classpath:spring/*.xml" })  
public class BookDaoTest {
    @Autowired
    private BookDao bookDao;
    
    @Test
    public void testGetBookList(){
        System.out.println("xiaoji");
    }
    
    @Test
    public void testSaveBookList(){
        System.out.println(bookDao.getBookList());
    }
    @Test
    public void testUpdateBookList(){
        Book book = new Book();
        book.setName("ssh3");
        book.setDescription("ssh3");
        bookDao.saveBook(book);
        System.out.println("ok");
    }
}

 

注解:在src/main/webapp下面建立个view目录,并新建main.jsp和error.jsp.如果觉的此文对你有帮助,请回复一下鼓励下我,以后我会发布更多类似文章。

下面贴上目录结构图:

 

 

 

分享到:
评论
10 楼 gulahong 2016-06-15  
jishiweili 写道
gulahong 写道
very perfact!

看见你的回复,我觉的我的博客没白写。前面很多人看都没评论使得我2015都没怎么写了,很纠结我到底继续分享我的知识么

谢谢你的知识分享,正因为有了你们这些乐于分享的人,才使得各种技术的不断推陈出新!
9 楼 punisherj 2016-04-07  
非常感谢!简单明了!
8 楼 cjun90 2015-12-23  
很不错!!
7 楼 aa51513 2015-09-24  
新手上路,感谢分享,希望能有朝一日学到楼主这个水平
6 楼 bearshare 2015-09-01  
我觉得非常好。十分感谢
5 楼 tonyliang_id 2015-08-10  
非常好,已经下载下来在本机运行起来了;第一次看SSH整合在一起的,code不太看得懂,有对应的详细点的说明文档或者资料推荐吗?
4 楼 paulliu88 2015-06-27  
不错,先试试
3 楼 wangzhe_real 2015-06-12  
我按照您的pom写了一份儿之后,发现出现
ArtifactDescriptorException: Failed to read artifact descriptor for org.springframework:spring-context:jar:${spring.version}: 这个错误,是怎么回事儿呢?
2 楼 jishiweili 2015-06-11  
gulahong 写道
very perfact!

看见你的回复,我觉的我的博客没白写。前面很多人看都没评论使得我2015都没怎么写了,很纠结我到底继续分享我的知识么
1 楼 gulahong 2015-06-10  
very perfact!

相关推荐

    构建基于Maven的SSH原型项目

    "构建基于Maven的SSH原型项目"这个主题,旨在帮助初学者理解和掌握如何使用这些技术搭建一个基础的Web应用。 首先,Maven是Apache开发的一个项目管理工具,它通过一个项目对象模型(Project Object Model,POM)来...

    maven搭建SSH项目

    "Maven搭建SSH项目"是一个基础的Java Web开发模板,通过Maven管理项目构建,结合Struts2处理请求,Spring管理依赖和事务,Hibernate进行数据操作。这样的组合可以快速构建出功能完备的应用,并易于维护和扩展。理解...

    Maven下ssh项目框架搭建

    在Maven环境下搭建SSH项目框架,可以有效地管理和组织项目的构建、依赖和部署过程,提高开发效率。本教程将详细介绍如何在Maven下利用注解方式搭建SSH框架。 首先,我们需要了解SSH框架的组成部分: 1. Spring:这...

    基于Maven的SSH框架搭建

    在这个基于Maven的SSH框架搭建实例中,我们将探讨如何利用这些框架以及Maven构建工具来搭建一个完整的Web项目。 首先,Spring框架是核心,它提供了依赖注入(DI)和面向切面编程(AOP)的功能,以实现松耦合和更好...

    Maven-SSH框架搭建

    在Maven环境中搭建SSH框架,你需要先配置项目的pom.xml文件,引入所需的依赖。对于Struts2,Spring和Hibernate,你需要指定它们的版本号。例如: ```xml &lt;groupId&gt;org.apache.struts &lt;artifactId&gt;struts2-core...

    vue+maven+ssh前后端分离的网上花店系统

    项目描述 以前的一个学长让我帮着做的一个项目,vue花店,适合做手机端商城,需要Vue商城的,可以下载下去进行二开。用tomcat加载maven项目,数据库用户名密码要修改为自己的,前端vue如果端口被占用了...vue+maven+ssh

    Ecplise+Maven搭建SSH框架

    下面将详细介绍如何使用Eclipse集成开发环境和Maven构建工具来搭建SSH框架。 1. **Eclipse安装与配置** Eclipse是一款广泛使用的Java IDE,首先确保已经下载并安装了最新版本的Eclipse。在Eclipse中,我们需要安装...

    maven整合SSH框架,ehcache搭建,可直接运行导入运行

    整合SSH框架意味着在Maven项目中配置Struts2、Spring和Hibernate的依赖,以及相应的插件和配置文件。Struts2提供MVC模式的前端控制,Spring负责依赖注入和事务管理,Hibernate则处理对象关系映射,实现数据库操作。 ...

    Maven的简单使用以及Maven搭建SSH

    ** Maven的简单使用以及Maven搭建SSH ** Maven是一个强大的Java项目管理工具,它能够帮助开发者构建、管理和部署项目。Maven通过使用一个统一的项目对象模型(Project Object Model,POM)来描述项目,并利用插件...

    maven搭建SSH工程

    【标题】:“Maven搭建SSH工程” 在Java开发领域,SSH(Struts、Spring、Hibernate)是一个常见的Web应用开发框架组合。它结合了Struts的MVC设计模式、Spring的依赖注入以及Hibernate的对象关系映射功能,使得开发...

    eclipse+maven +ssh

    在搭建SSH框架时,首先,我们需要在Eclipse中创建一个Maven项目,配置pom.xml文件引入SSH框架和其他必要的依赖。然后,按照MVC设计模式划分项目结构,包括模型(Model)、视图(View)和控制器(Controller)三层。...

    maven 搭建SSH框架(带Source)

    "Maven 搭建SSH框架"意味着我们将利用Maven这个项目管理工具来构建和管理SSH应用。Maven通过POM(项目对象模型)文件统一管理项目的依赖关系、构建过程和插件,使得开发、测试和部署更加规范和便捷。 以下是搭建SSH...

    maven搭建SSH框架源码

    现在我们将深入探讨如何使用Maven来搭建一个基于SSH框架的项目。 首先,创建一个新的Maven项目。在IDE如IntelliJ IDEA或Eclipse中,选择“New -&gt; Maven Project”,填写项目的基本信息,包括GroupId(通常代表公司...

    maven搭建ssh

    在IT行业中,SSH(Spring、Struts、Hibernate)是一个经典的Java Web开发框架组合,而Maven则是一个项目管理和综合工具,常用于构建和管理Java项目。本篇文章将深入探讨如何利用Maven搭建SSH框架,以及在这个过程中...

    SSH+Maven框架搭建

    SSH+maven搭建的项目

    Maven搭建SSH框架Demo

    Maven搭建SSH框架Demo,Maven是可以解决包依赖问题,在搭建SSH(struts2,spring3,hibernate)框架时不用考虑包的依赖问题,提高了开发效率,该demo已经完成框架的搭建,可以直接拿来使用

    ssh分模块maven项目

    &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener &lt;/listener&gt; &lt;param-name&gt;contextConfigLocation &lt;param-value&gt;classpath:applicationContext.xml &lt;/context-param&gt;

    maven ssh框架搭建

    Maven作为项目管理和构建工具,能有效地管理SSH框架的依赖,帮助开发者搭建环境。现在,我们将详细介绍如何使用Maven来搭建一个基于SSH的Java Web项目。 首先,我们需要确保已经安装了Java Development Kit (JDK) ...

Global site tag (gtag.js) - Google Analytics