项目框架 bootstrap、jquery、struts2/mybites /spring/

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xiaoleizhanghahaha/article/details/53415458

-------------------------------------------------------------------------------

action   层   控制层 放的实现类   和对页面数据的封装  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"/>
<constant name="struts.action.extension" value="action,do,s2"></constant>
<!-- <package name="date" namespace="/" extends="json-default">
ajx 请求 服务器直接返回action 数据
<action name="getdate" class="com.weixin.action.auth.OAuthAction" method="getOAuthCodeRepair">
<result type="json">
默认返回全部数据,设置incluceProperties 返回部分(name user对象)要返回的数据
<param name="incluceProperties">
name,user.*
</param>
</result>
</action>
</package> -->

<package name="ehrlink" extends="json-default">
<action name="init" class="com.weixin.action.NewsAction" method="init">
<result name="success">/news/jsp/news.jsp</result>
</action>
<action name="noticeJump" class="com.weixin.action.NoticeAction" method="noticeJump">
<result name="success">/index.jsp</result>
</action>
<action name="taskGetAllToDoTasks" class="com.weixin.action.TasksAction" method="getAllToDoTasks">
<result name="success">/task/taskList.jsp</result>
</action>
<action name="taskGetAllDoneTasks" class="com.weixin.action.TasksAction" method="getAllDoneTasks">
<!-- <result name="success" type="json">
<param name="root">doneTasks</param>
</result> -->
<result name="success">/task/doneTasks.jsp</result>
</action>
<action name="getAllProposal" class="com.weixin.action.TasksAction" method="getProposalByUserName">
<!-- <result name="success" type="json">
<param name="root">doneTasks</param>
</result> -->
<result name="success">/task/proposal.jsp</result>
</action>
<action name="taskGetAllToDoTasksByJson" class="com.weixin.action.TasksAction" method="getAllToDoTasksByJson">
<result name="success" type="json">
<param name="root">resultData</param>
</result>
</action>

<action name="getAllDoneTasksJson" class="com.weixin.action.TasksAction" method="getAllDoneTasksJson">
<result name="success" type="json">
<param name="root">resultData</param>
</result>
</action>
<action name="followSaveFollow" class="com.weixin.action.FollowAction" method="saveFollow">
<result name="success">/task/taskList.jsp</result>
</action>
<action name="followGetAllfollow" class="com.weixin.action.FollowAction" method="getAllFollowByUserName">
<result name="success">/follow/followList.jsp</result>
</action>
<action name="followDelete" class="com.weixin.action.FollowAction" method="deleteFollowByID">
<result name="success">/follow/followList.jsp</result>
</action>

<action name="nextPage" class="com.weixin.action.FollowAction" method="nextPageJson">
<result name="success" type="json">
<param name="root">resultData</param>
</result>
</action>

<action name="getNodes" class="com.weixin.action.FollowAction" method="getNodes">
<result name="success" type="json">
<param name="root">resultData</param>
</result>
</action>


<action name="getReadNoticeByUserName" class="com.weixin.action.ReadNoticeAction" method="getAllReadNoticeByUserName">
<result name="success">/follow/followList.jsp</result>
</action>

<action name="readNoticeDetail" class="com.weixin.action.ReadNoticeAction" method="getReadNoticeDetail">
<result name="success">/readNotice/readNoticeDetail.jsp</result>
</action>
</package>

</struts> 

-----------------------------------------------

constan  枚举类常量

------------------------------------------------

dao 层   follow.xml   mybitys.xml 文件以及对应的映射实体类。 SqlMapConfig.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
    "http://ibatis.apache.org/dtd/sql-map-config-2.dtd">

<sqlMapConfig>
<settings enhancementEnabled="true" maxTransactions="20"
maxRequests="32" maxSessions="10" useStatementNamespaces="true"/>
<sqlMap resource="com/ceair/weixin/dao/impl/OrgInfo.xml" />
<sqlMap resource="com/ceair/weixin/dao/impl/User.xml" />
<sqlMap resource="com/ceair/weixin/dao/impl/PushMessage.xml" />
<sqlMap resource="com/ceair/weixin/dao/impl/Token.xml" />
<sqlMap resource="com/ceair/weixin/dao/impl/Follow.xml" />
<sqlMap resource="com/ceair/weixin/dao/impl/OrgT.xml" />
</sqlMapConfig>

-----------------------------------------------------------------------------------------

mobel  层放实体类,封装的对象,本地建表要插入的一些对象

扫描二维码关注公众号,回复: 3225785 查看本文章

--------------------------------------------------------------------------------------------

Quartz     PushMessageQuartz.java   执行推送信息    applicationContext-bean.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd" >
<beans>
<!-- 定时获取数据,并推送到微信中 -->
<!-- 要调用的工作类 -->
<bean id="pushMessage" class="com.weixin.quartz.PushMessageQuartz"></bean>
<!-- 要调用的工作类 -->
<bean id="pushNewsMessage" class="com.weixin.quartz.PushNewsMessageQuartz"></bean>


<!-- 定义调用对象和调用对象的方法 -->
<bean id="othertask"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<!-- 调用的类 -->
<property name="targetObject">
<ref bean="pushMessage" />
</property>
<!-- 调用类中的方法 -->
<property name="targetMethod">
<value>pushMessage</value>
</property>
</bean>


<!-- 新闻的推送设置 -->
<bean id="pushNewstask"
class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
<!-- 调用的类 -->
<property name="targetObject">
<ref bean="pushNewsMessage" />
</property>
<!-- 调用类中的方法 -->
<property name="targetMethod">
<value>pushNewsMessage</value>
</property>
</bean>


<!-- 定义触发时间 -->
<bean id="doTime" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail">
<ref bean="othertask" />
</property>
<!-- cron表达式 -->
<property name="cronExpression">
<!-- 五分钟执行一次 -->
<!-- <value> 10,15,20,25,30,35,40,45,50,55 * * * * ?</value> -->
<value>0 0/5 * * * ?</value>
</property>
</bean>
<!-- 定义触发时间 -->
<bean id="doTimeNews" class="org.springframework.scheduling.quartz.CronTriggerBean">
<property name="jobDetail">
<ref bean="pushNewstask" />
</property>
<!-- cron表达式 -->
<property name="cronExpression">
<!-- 上午10点和下午4执行 -->
<!-- <value> 10,15,20,25,30,35,40,45,50,55 * * * * ?</value> -->
<value>0 0 10,16 * * ? </value>
</property>
</bean>
<!-- 总管理类 如果将lazy-init='false'那么容器启动就会执行调度程序 -->
<bean id="startQuertz" lazy-init="false" autowire="no"
class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
<property name="triggers">
<list>
<!-- 执行其他的推送设置 -->
<ref local="doTime" />
<!-- 执行新闻推送设置 -->
<ref local="doTimeNews" />
</list>
</property>
</bean>
</beans>

----------------------------------------------------------------

服务端获取数据

com.weixin.services.dbservice    

com.weixin.services.dbservice.impl

---------------------------------------

工具类

com.weixin.util

-----------------------------

applicationContext-datasource.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" 
"http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans>
    <bean id="dataSource_mplatform" class="org.logicalcobwebs.proxool.ProxoolDataSource">
        <property name="driver" value="com.microsoft.sqlserver.jdbc.SQLServerDriver"/>
      <!--测试  -->
        <property name="driverUrl" value="jdbc:sqlserver://*.*.*.*:1433;DatabaseName=qiyeweixin"/>
        <property name="user" value="weixin"/>
        <property name="password" value="weixin"/> 
      
        <property name="maximumActiveTime" value="300000"/>
        <property name="prototypeCount" value="2"/>
        <property name="maximumConnectionCount" value="50"/>
        <property name="minimumConnectionCount" value="2"/>
        <property name="simultaneousBuildThrottle" value="50"/>
        <property name="houseKeepingTestSql" value="select 1"/> 
        <property name="alias" value="dataSource_mplatform"/> 
    </bean>
     
    <bean id="sqlMapClientFactoryBean_mplatform" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
        <property name="configLocation">
            <value>classpath:SqlMapConfig.xml</value>
        </property> 
        <property name="dataSource" ref="dataSource_mplatform"/>
    </bean>
     
</beans>

-------------------------------------------------

applicationContext.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:jee="http://www.springframework.org/schema/jee"
xmlns:tx="http://www.springframework.org/schema/tx" 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-2.5.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-2.5.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd">

<!-- default-lazy-init="true" -->
<import resource="applicationContext-datasource.xml" />
<import resource="applicationContext-bean.xml" />
<!-- 使用annotation 自动注册bean,并检查@Required,@Autowired的属性已被注入 -->
<context:component-scan base-package="com.weixin" />
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource_mplatform" />
</bean>

<!-- 注解事务 -->
<tx:annotation-driven transaction-manager="transactionManager" />
</beans>

------------------------------------------------------

log4j.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/xml/doc-files/log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
    <appender name="console" class="org.apache.log4j.ConsoleAppender">
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern"
                value="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p %l > %m%n" />
        </layout>
    </appender>


    <appender name="ehrlink.debug" class="org.apache.log4j.DailyRollingFileAppender">
        <param name="BufferSize" value="2048" />
        <param name="Encoding" value="UTF-8"/>
        <param name="File" value="/oracle/Middleware/user_projects/domains/mobile_domain/applications/log4j/ehrlink/ehrlink.debug.log"/>
        <param name="Append" value="true"/>
        <param name="MaxFileSize" value="8mb"/>
        <param name="MaxBackupIndex" value="3"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss,SSS} %t %c.%M(%L) > %m%n"/>
        </layout>
        <filter class="org.apache.log4j.varia.LevelRangeFilter">
            <param name="LevelMin" value="TRACE" />
            <param name="LevelMax" value="DEBUG" />
        </filter>
    </appender>
    
    <appender name="ehrlink.debug.other" class="org.apache.log4j.RollingFileAppender">
        <param name="BufferSize" value="2048" />
        <param name="Encoding" value="UTF-8"/>
        <param name="File" value="/oracle/Middleware/user_projects/domains/mobile_domain/applications/log4j/ehrlink/ehrlink.debug.other.log"/>
        <param name="Append" value="true"/>
        <param name="MaxFileSize" value="8mb"/>
        <param name="MaxBackupIndex" value="3"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss,SSS} %t %c.%M(%L) > %m%n"/>
        </layout>
        <filter class="org.apache.log4j.varia.LevelRangeFilter">
            <param name="LevelMin" value="TRACE" />
            <param name="LevelMax" value="DEBUG" />
        </filter>
    </appender>
    
    <appender name="ehrlink.info" class="org.apache.log4j.RollingFileAppender"> 
        <param name="Encoding" value="UTF-8"/>
        <param name="File" value="/oracle/Middleware/user_projects/domains/mobile_domain/applications/log4j/ehrlink/ehrlink.info.log"/>
        <param name="Append" value="true"/>
        <param name="MaxFileSize" value="8mb"/>
        <param name="MaxBackupIndex" value="3"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p %c.%M(%L) > %m%n"/>
        </layout>
        <!-- Only INFO level information can be caught. -->
        <filter class="org.apache.log4j.varia.LevelRangeFilter">
            <param name="LevelMin" value="INFO" />
            <param name="LevelMax" value="WARN" />
        </filter>
    </appender>
    
    <appender name="ehrlink.info.other" class="org.apache.log4j.RollingFileAppender"> 
        <param name="Encoding" value="UTF-8"/>
        <param name="File" value="/oracle/Middleware/user_projects/domains/mobile_domain/applications/log4j/ehrlink/ehrlink.info.other.log"/>
        <param name="Append" value="true"/>
        <param name="MaxFileSize" value="8mb"/>
        <param name="MaxBackupIndex" value="3"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p %c.%M(%L) > %m%n"/>
        </layout>
        <!-- Only INFO level information can be caught. -->
        <filter class="org.apache.log4j.varia.LevelRangeFilter">
            <param name="LevelMin" value="INFO" />
            <param name="LevelMax" value="WARN" />
        </filter>
    </appender>


    <appender name="ehrlink.error" class="org.apache.log4j.DailyRollingFileAppender"> 
        <param name="Encoding" value="UTF-8"/>
        <param name="File" value="/oracle/Middleware/user_projects/domains/mobile_domain/applications/log4j/ehrlink/ehrlink.error.log"/>
        <param name="Append" value="true"/>
        <param name="MaxFileSize" value="8mb"/>
        <param name="MaxBackupIndex" value="3"/>
        <layout class="org.apache.log4j.PatternLayout">
            <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p %t %l > %m%n"/>
        </layout>
        <!-- Only ERROR level information can be caught. -->
        <filter class="org.apache.log4j.varia.LevelRangeFilter">
            <param name="LevelMin" value="ERROR" />
            <param name="LevelMax" value="FATAL" />
        </filter>
    </appender>
    <appender name="oscache" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-4r [%t] %-5p %c %x - %m%n" />
</layout>
<filter class="org.apache.log4j.varia.LevelRangeFilter">
<param name="LevelMin" value="DEBUG" />
<param name="LevelMax" value="ERROR" />
</filter>
</appender>
<!-- 
<logger name="com.opensymphony.oscache" additivity="true">
<level value="DEBUG" />
<appender-ref ref="oscache" />
</logger>
    
<appender name="IBatis" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-4r [%t] %-5p %c %x - %m%n" />
</layout>
<filter class="org.apache.log4j.varia.LevelRangeFilter">
<param name="LevelMin" value="DEBUG" />
<param name="LevelMax" value="ERROR" />
</filter>
</appender>
<logger name="java.sql.Connection" additivity="true">
<level value="DEBUG" />
</logger>
<logger name="java.sql.Statement" additivity="true">
<level value="DEBUG" />
</logger>
<logger name="java.sql.PreparedStatement" additivity="true">
<level value="DEBUG" />
<appender-ref ref="IBatis" />
</logger>
<logger name="java.sql.ResultSet" additivity="true">
<level value="DEBUG" />
<appender-ref ref="IBatis" />
</logger>
-->
    <logger name="com.ceair" additivity="false">
        <level value="debug" />
        <appender-ref ref="console"/>
        <appender-ref ref="ehrlink.debug"/>
        <appender-ref ref="ehrlink.info"/>
        <appender-ref ref="ehrlink.error"/>
    </logger>
    
    <root>
        <level value="error" />
        <appender-ref ref="ehrlink.debug.other"/>
        <appender-ref ref="ehrlink.info.other"/>
        <appender-ref ref="ehrlink.error"/>
    </root>
</log4j:configuration>

猜你喜欢

转载自blog.csdn.net/xiaoleizhanghahaha/article/details/53415458