spring BeanHelp的应用

本文介绍了如何使用Spring框架进行项目的整合与部署,包括Spring与其他框架的整合方式、配置文件的组织结构、过滤器的设置以及错误页面的配置等。特别关注了Spring Security的安全配置和Struts框架的整合。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

BeanHelp.class

package cn.com.sohocat.util;

 


import java.io.File;

import javax.servlet.ServletContext;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.FileSystemXmlApplicationContext;
import org.springframework.web.context.support.WebApplicationContextUtils;


public class BeanHelp extends LogClass{

 private static ApplicationContext ac = null;
 
 public static String getWebInfPath(){
  return new File(BeanHelp.class.getResource("/").getPath()).getParent();
 }
 
 public static void init(ServletContext context) {
  ac = WebApplicationContextUtils.getWebApplicationContext(context);
 }
 
 public static void init(String[] files) {
  ac = new FileSystemXmlApplicationContext(files);
 }
 
 public static Object getBean(String name) {
     if(name==null) return null;
  if (ac==null) {
   System.out.println("getWebInfPath():"+getWebInfPath());
   String[] files = {
//     getWebInfPath()+File.separator+"applicationContext.xml", 
//     getWebInfPath()+File.separator+"applicationContext-common.xml",
//     getWebInfPath()+File.separator+"applicationContext-security.xml",
//     getWebInfPath()+File.separator+"applicationContext-other.xml"
     File.separator+getWebInfPath()+File.separator+"applicationContext.xml",
     File.separator+getWebInfPath()+File.separator+"applicationContext-common.xml",
     File.separator+getWebInfPath()+File.separator+"applicationContext-security.xml",
//     File.separator+getWebInfPath()+File.separator+"applicationContext-other.xml"
   };
   init(files);
     }
  return ac.getBean(name);
 }
}

 

 

 

InitApplication.class

package cn.com.sohocat.util;

 

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;

public class InitApplication extends HttpServlet {
 public void init() throws ServletException {
  BeanHelp.init(getServletContext());  
 }
}

 

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
 
   <!-- ****************************spring及其他初始化配置********************************* -->
   <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/applicationContext*.xml</param-value>
   </context-param>
   
   <servlet>
     <servlet-name>context</servlet-name>
     <servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-class>
     <load-on-startup>1</load-on-startup>
   </servlet>
 
   <servlet>
     <servlet-name>InitApplication</servlet-name>
     <servlet-class>cn.com.sohocat.util.InitApplication</servlet-class>
     <load-on-startup>1</load-on-startup>
   </servlet>
   
   <servlet>
     <servlet-name>InitMenu</servlet-name>
     <servlet-class>cn.com.sohocat.util.InitMenu</servlet-class>
     <load-on-startup>1</load-on-startup>
   </servlet>
   
   <filter>
    <filter-name>SetCharacterEncoding</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>SetCharacterEncoding</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
   <!-- ****************************spring及其他初始化配置********************************* -->
 
 

    <!-- **********************springSecurity权限管理的web.xml配置************************* -->
   <filter>
        <filter-name>springSecurityFilterChain</filter-name>
        <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
    </filter>
   
    <filter-mapping>
        <filter-name>springSecurityFilterChain</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>
   
    <listener>
     <listener-class>org.springframework.security.ui.session.HttpSessionEventPublisher</listener-class>
    </listener>
    <!-- **********************springSecurity权限管理的web.xml配置************************* -->
   
   
   
   <!-- *****************************struts***web.xml配置******************************* -->
   <servlet>
     <servlet-name>action</servlet-name>
     <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
     
     <init-param>
        <param-name>config</param-name>
        <param-value>/WEB-INF/struts-config.xml</param-value>
     </init-param>
     
     <init-param>
        <param-name>debug</param-name>
        <param-value>3</param-value>
     </init-param>
     
     <init-param>
        <param-name>detail</param-name>
        <param-value>3</param-value>
     </init-param>
     
     <load-on-startup>0</load-on-startup>
   </servlet>
   
   <servlet-mapping>
     <servlet-name>action</servlet-name>
     <url-pattern>*.do</url-pattern>
   </servlet-mapping>
   <!-- *****************************struts***web.xml配置******************************* -->
   
   
   
   <!-- *****************************欢迎页面***web.xml配置****************************** -->
   <welcome-file-list>
     <welcome-file>main.jsp</welcome-file>
   </welcome-file-list>
   <!-- *****************************欢迎页面***web.xml配置****************************** -->
   
   
   
   
   <!-- *****************************FCKeditor编辑器配置******************************** -->
   <servlet>
       <servlet-name>Connector</servlet-name>
       <servlet-class>com.fredck.FCKeditor.connector.ConnectorServlet</servlet-class>
       <init-param>
           <param-name>baseDir</param-name>
           <param-value>/UserFiles/</param-value>
       </init-param>
       <init-param>
           <param-name>debug</param-name>
           <param-value>false</param-value>
       </init-param>
       <load-on-startup>1</load-on-startup>
    </servlet>
    
    <servlet>
       <servlet-name>SimpleUploader</servlet-name>
       <servlet-class>com.fredck.FCKeditor.uploader.SimpleUploaderServlet</servlet-class>
       <init-param>
           <param-name>baseDir</param-name>
           <param-value>/UserFiles/</param-value>
       </init-param>
       <init-param>
           <param-name>debug</param-name>
           <param-value>false</param-value>
       </init-param>
       <init-param>
           <param-name>enabled</param-name>
           <param-value>true</param-value>
       </init-param>
       <init-param>
           <param-name>AllowedExtensionsFile</param-name>
           <param-value></param-value>
       </init-param>
       <init-param>
           <param-name>DeniedExtensionsFile</param-name>
           <param-value>php|php3|php5|phtml|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|dll|reg|cgi</param-value>
       </init-param>
       <init-param>
           <param-name>AllowedExtensionsImage</param-name>
           <param-value>jpg|gif|jpeg|png|bmp</param-value>
       </init-param>
       <init-param>
           <param-name>DeniedExtensionsImage</param-name>
           <param-value></param-value>
       </init-param>
       <init-param>
           <param-name>AllowedExtensionsFlash</param-name>
           <param-value>swf|fla</param-value>
       </init-param>
       <init-param>
           <param-name>DeniedExtensionsFlash</param-name>
           <param-value></param-value>
       </init-param>
       <load-on-startup>1</load-on-startup>
    </servlet>

 <servlet-mapping>
     <servlet-name>Connector</servlet-name>
     <url-pattern>/FCKeditor/editor/filemanager/browser/default/connectors/jsp/connector</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
     <servlet-name>SimpleUploader</servlet-name>
     <url-pattern>/FCKeditor/editor/filemanager/upload/simpleuploader</url-pattern>
 </servlet-mapping>

 <jsp-config>
  <taglib>
   <taglib-uri>/FCKeditor</taglib-uri>
   <taglib-location>/WEB-INF/FCKeditor.tld</taglib-location>
  </taglib>
 </jsp-config>
 <!-- *****************************FCKeditor编辑器配置******************************** -->
 
 
 <error-page>
  <error-code>404</error-code>
  <location>/errors/error_404.html</location>
 </error-page>
 
 <error-page>
  <error-code>500</error-code>
  <location>/errors/error_500.html</location>
 </error-page>
   
</web-app>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值