spring3.0的基本配置


这次从零开始建一个web项目, 发现网上针对spring 3.0的讲解不多, 所以借此机会记录一下配置一个基本的web项目, 主要是配置spring3的过程, 其实大部分和2是类似的.

第一步: 建立并部署一个web项目, (可跳过)
1. 这里想关于web项目简单说一句, 其实一个wen工程最基本的,只看3个地方:
在根目录下(这个目录一般习惯叫WebContext或WebRoot)有 
 1. WebRoot/WEB-INF/web.xml  启动引导文件
 2.WebRoot/WEB-INF/classes/  编译的class文件,会根据package建立子路径 
 3.WebRoot/WEB-INF/lib/      jar包 (注意,lib下不可以再建子目录)
这就是一般比较常用的web工程的结构. 有了这三个结构, 然后把WebRoot的绝对路径告诉tomcat这样的web容器,就可以启动了(当然里面要有相应的东西才行).
因此虽然我们一般项目的结构是: projectname/src, projectname/WebRoot 但实际上src里的.java源代码是tomcat完全不关心的,它的解析是从WebRoot开始的, .class才是它认识的.


下面是一个初始的web.xml. 这个文件就相当于项目的启动引导文件, web容器最先找到这个文件,然后解读并一一启动这些类.

[xhtml]  view plain copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <web-app xmlns="http://java.sun.com/xml/ns/javaee"  
  3.  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  4.  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"  
  5.  version="2.5">  
  6.    
  7.     
  8.  <servlet>  
  9.   <servlet-name>TestServlet</servlet-name>  
  10.   <display-name>测试用Servlet</display-name>  
  11.   <servlet-class>test.TestServlet</servlet-class>  
  12.  </servlet>  
  13.  <servlet-mapping>  
  14.   <servlet-name>TestServlet</servlet-name>  
  15.   <url-pattern>/test/*</url-pattern>  
  16.  </servlet-mapping>  
  17.     
  18.    
  19.  <welcome-file-list>  
  20.   <welcome-file>index.jsp</welcome-file>  
  21.  </welcome-file-list>  
  22. </web-app>  

 

 2.部署至tomcat: 
tomcat的部署方式有很多, 我比较喜欢的部署方式是apache-tomcat/conf/Catalina/localhost/ 下放入projectname.xml配置文件, 
内容为

[xhtml]  view plain copy
  1. <Context path="projectname" reloadable="true" docBase="D:/workspace/projectname/WebContent" ></Context>  

工程就部署完了. 简单吧.
然后在eclipse里也不用去配什么server,运行环境. 装一个tomcat插件,指定tomcat路径就行了. 上面的xml文件也可以通过配置eclipse-tomcat插件自动生成.

 


第二步: 把spring的jar包引进来, 这可不是废话哦. 见过spring3.0的都知道, spring3把之前的一个万能spring.jar分拆成了20个小jar. 当然你也可以省事的直接把20个都引进来,没问题.
不过如果你不想这么干, 这里是一个简单能在web中实现最基本的依赖注入所需的jar包: 
org.springframework.asm-3.0.5.RELEASE.jar
org.springframework.beans-3.0.5.RELEASE.jar
org.springframework.context-3.0.5.RELEASE.jar
org.springframework.core-3.0.5.RELEASE.jar
org.springframework.expression-3.0.5.RELEASE.jar
org.springframework.web-3.0.5.RELEASE.jar
commons-logging-1.1.1.jar
其中commons-logging-1.1.1.jar 是spring的依赖包.

 

以上是一个不含spring-jdbc数据库管理的合集, 如果要用spring的持久层,还需要:
org.springframework.jdbc-3.0.5.RELEASE.jar
org.springframework.transaction-3.0.5.RELEASE.jar
commons-dbcp-1.3.jar   
commons.pool-1.5.3.jar
同样,后面2个也是spring的依赖包.
关于spring持久层的配置在下一节介绍

 


第三步: 配置spring, 基本和spring2还是一样的.
1 在web.xml中加入
 

[xhtml]  view plain copy
  1. <context-param>    
  2.   <param-name>contextConfigLocation</param-name>    
  3.   <param-value>/WEB-INF/spring*.xml</param-value>    
  4.  </context-param>    
  5.  <listener>    
  6.   <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>    
  7.  </listener>   

以前见通过配置spring的Servlet方式, 那种是为了对应在一些低版本的web容器. 这里就不讲了.

2. 在WEB-INF/ 下建一个 spring-conf.xml  (名字和路径都随便了, 跟第一步的配置对应就行了.不过出于安全考虑还是不要放到WEB-INF外面.)

[xhtml]  view plain copy
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <beans xmlns="http://www.springframework.org/schema/beans"  
  3.  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  4.  xsi:schemaLocation="http://www.springframework.org/schema/beans  
  5.  http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">  
  6.     
  7.  <bean id="TestBo"  
  8.   class="test.TestBo">  
  9.  </bean>  
  10.   
  11.  <bean id="TestAction" class="test.TestAction">  
  12.   <property name="TestBo" ref="TestBo" />  
  13.  </bean>  
  14. </beans>  

这里spring的配置就算完成了, 然后把测试类实现一下, 就可以测测效果啦. 基本除了jar包以外,和spring2都是一致的.


下面是TestServlet , 其他的TestAction和TestBo就随便写了. 启动后访问

http://127.0.0.1:8080/projectname/test/abc 就可以看到执行输出了

[java]  view plain copy
  1. package test;  
  2.   
  3. import java.io.IOException;  
  4.   
  5. import javax.servlet.ServletConfig;  
  6. import javax.servlet.ServletException;  
  7. import javax.servlet.http.HttpServlet;  
  8. import javax.servlet.http.HttpServletRequest;  
  9. import javax.servlet.http.HttpServletResponse;  
  10.   
  11. import org.springframework.context.ApplicationContext;  
  12. import org.springframework.web.context.support.WebApplicationContextUtils;  
  13.   
  14. public class TestServlet extends HttpServlet {  
  15.   
  16.         TestAction ta ;  
  17.     public TestServlet()  
  18.     {  
  19.     }  
  20.   
  21.     public void init(ServletConfig servletConfig)  
  22.       throws ServletException{  
  23.      servletConfig.getServletContext();  
  24.      ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(servletConfig.getServletContext());  
  25.      this.ta = ctx.getBean(TestAction.class);  
  26.      this.ta.sayHello();  
  27.    System.out.println("TestServlet init");  
  28. //     TestAction ta = new TestAction();  
  29. //     ta.sayHello();  
  30.     }  
  31.   
  32.   
  33.     public void doGet(HttpServletRequest req, HttpServletResponse resp)  
  34.       throws IOException, ServletException  
  35.     {  
  36.       doPost(req, resp);  
  37.     }  
  38.   
  39.     public void doPost(HttpServletRequest request, HttpServletResponse response)  
  40.       throws IOException, ServletException  
  41.     {  
  42.      this.ta.sayHello();  
  43.     }  
  44.   
  45.     public void destroy()  
  46.     {  
  47.     }  
  48. }  

.

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot 3.0中配置WebSocket,你可以按照以下步骤进行操作: 1. 添加依赖:在`pom.xml`文件中添加WebSocket依赖,例如: ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId> </dependency> ``` 2. 创建WebSocket配置类:创建一个用于配置WebSocket的类,例如`WebSocketConfig`。可以使用`@Configuration`注解标记该类,并且需要继承`WebSocketConfigurer`接口。在该类中,你可以配置WebSocket的相关参数和处理器。 ```java @Configuration @EnableWebSocket public class WebSocketConfig implements WebSocketConfigurer { @Override public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) { registry.addHandler(myWebSocketHandler(), "/websocket") .setAllowedOrigins("*"); } @Bean public WebSocketHandler myWebSocketHandler() { return new MyWebSocketHandler(); } } ``` 3. 创建WebSocket处理器:创建一个用于处理WebSocket连接的处理器,例如`MyWebSocketHandler`。该处理器需要实现`WebSocketHandler`接口,并重写相应的方法来处理连接、消息和关闭事件。 ```java public class MyWebSocketHandler implements WebSocketHandler { @Override public void afterConnectionEstablished(WebSocketSession session) throws Exception { // 连接建立后的处理逻辑 } @Override public void handleMessage(WebSocketSession session, WebSocketMessage<?> message) throws Exception { // 处理收到的消息 } @Override public void handleTransportError(WebSocketSession session, Throwable exception) throws Exception { // 处理传输错误 } @Override public void afterConnectionClosed(WebSocketSession session, CloseStatus closeStatus) throws Exception { // 连接关闭后的处理逻辑 } @Override public boolean supportsPartialMessages() { return false; } } ``` 4. 配置WebSocket端点:在`WebSocketConfig`类的`registerWebSocketHandlers`方法中,注册WebSocket处理器并指定WebSocket的端点路径。 5. 启动应用程序:运行Spring Boot应用程序,并确保WebSocket配置正确。现在,你可以使用WebSocket客户端连接到`ws://localhost:{port}/websocket`(其中`{port}`是你的应用程序端口)。 以上是一个基本的WebSocket配置示例,你可以根据自己的需求进行调整和扩展。希望对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值