自己搭建项目中存在的一些问题

1、多种分页方式
Oracle
Mysql
数组下标
pagehelper
2、
Spring Web MVC 处理Http请求的大致过程:
一旦Http请求到来,DispatcherSevlet将负责将请求分发。DispatcherServlet可以认为是Spring提供的前端控制器,
所有的请求都有经过它来统一分发。
在DispatcherServlet将请求分发给Spring Controller之前,需要借助于Spring提供的HandlerMapping定位到具体的Controller。
HandlerMapping是这样一种对象,它能够完成客户请求到Controller之间的映射。
在Struts中,这种映射是通过struts-config.xml文件完成的。其中,Spring为Controller接口提供了若干实现,
例如Spring默认使用的BeanNameUrlHandlerMapping。还有,SimpleUrlHandlerMapping,CommonsPathMapHandlerMapping。
Spring Controller将处理来自DispatcherServlet的请求。Spring的Controller类似于struts的Action,
能够接受HttpServletRequest和HttpServletResponse。Spring为Controller接口提供了若干实现类,
位于org.springframework.web.servlet.mvc包中。由于Controller需要为并发用户处理上述请求,因此实现Controller接口时,
必须保证线程安全并且可重用。Controller将处理客户请求,这和Struts Action 扮演的角色是一致的。
一旦Controller处理完客户请求,则返回ModelAndView对象给DispatcherServlet前端控制器。
ModelAndView中包含了模型(Model)和视图(View)。从宏观角度考虑,DispatcherServlet是整个Web应用的控制器;
从微观角度考虑,Controller是单个Http请求处理过程中的控制器,而ModelAndView是Http请求过程中返回的模型和视图。
前端控制器返回的视图可以是视图的逻辑名,或者实现了View接口的对象。View对象能够渲染客户响应结果。
其中,ModelAndView中的模型能够供渲染View时使用。借助于Map对象能够存储模型。
如果ModelAndView返回的视图只是逻辑名,则需要借助Spring提供的视图解析器(ViewResoler)在Web应用中查找View对象,
从而将响应结果渲染给客户。DispatcherServlet将View对象渲染出的结果返回个客户。
3、
 @Override
    public PageBean<User> getUserByNoAndEmail(String no, String email) {
        Map<String, Object> map = new HashMap<>();
        map.put("no", no);
        map.put("email", email);
        
        PageHelper.startPage(PaginationContext.getPageNum(), PaginationContext.getPageSize());
        List<User> list = this.userMapper.getUserByNoAndEmail(map);
        return new PageBean<User>(list);
    }
4、每周任务总结
周一上午,将pagehelper了解清楚,并开始配置参数,写JUnit测试类;
周一下午,两种方式配置pagehelper,第一种是在controller层进行参数输入,pageNum、pageSize,通过默认参数来实现;
第二种可以自定义pageInfo类:pageBean,通过Filter拦截器,PageContext上下文参数设置页数和显示记录,在ServiceImpl中实现,在Controller中返回。
周二上午,添加事务管理,JUnit测试;
周二下午,查看缓存数据库redis相关资料,实现部分;
周三,上午,添加缓存数据库;
周三下午,对缓存数据库进行测试;
周四上午,shrio权限资料查询;
周四下午,对shrio进行操作,测试;
周五,进行本周功能总结,整合,以及下周需要进行操作的内容;
5、
(1)web project中异步操作作为一个单独模块如何设置依赖
maven中模块化操作如何设置;
(2)异步操作设计那些内容?
(3)上传下载功能
(4)controller层设置、beanname、mv.setViewName();
(5)responsebody
(6)批量添加前端设计
1)Oracle中mybatis写法
<insert id="addRoleModule" parameterType="java.util.List">
    INSERT INTO T_P_ROLE_MODULE (ROLE_ID, MODULE_ID)
    <foreach collection="list" item="item" index="index" separator=" UNION ALL ">
    SELECT #{item.roleId}, #{item.moduleId} FROM DUAL
    </foreach>
</insert>
2)mysql中mybatis的写法
    <insert id="addTrainRecordBatch" useGeneratedKeys="true" parameterType="java.util.List">  
        <selectKey resultType="long" keyProperty="id" order="AFTER">  
            SELECT  
            LAST_INSERT_ID()  
        </selectKey>  
        insert into t_train_record (add_time,emp_id,activity_id,flag)   
        values  
        <foreach collection="list" item="item" index="index" separator="," >  
            (#{item.addTime},#{item.empId},#{item.activityId},#{item.flag})  
        </foreach>  
    </insert>  
6、事务JUnit测试可用

http://blog.csdn.net/xiaoerduo123x/article/details/51387203
账户余额事务测试
http://www.mamicode.com/info-detail-1474508.html
7、日志配置文件不用导入?

9、
就是我在定义mapper.xml中的插入方法时一般都会默认用<![CDATA[ ]]>标签把sql语句括起来,如下所示:
    <![CDATA[
        select * from t_train_record t where t.activity_id=#{activityId}
    ]]>  
这样做的目的主要是因为在 XML 元素中,"<" 和 "&" 是非法的。"<" 会产生错误,因为解析器会把该字符解释为新元素的开始。
"&" 也会产生错误,因为解析器会把该字符解释为字符实体的开始。而sql语句或者脚本语句中可能会存在 "<" 或 "&" 字符。
为了避免错误,可以将sql语句定义为 CDATA。CDATA 部分中的所有内容都会被解析器忽略。
    当时我在addTrainRecordBatch方法中也用了这种用法:
    <![CDATA[
        insert into t_train_record (add_time,emp_id,activity_id,flag)  
        values
        <foreach collection="list" item="item" index="index" separator="," >
            (#{item.addTime},#{item.empId},#{item.activityId},#{item.flag})
        </foreach>
    ]]>  
结果程序在执行时老是报错: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException,查看错误信息就是传入的参数都是null。
纠结了很久,后面才发现原来是<![CDATA[ ]]>把xml中的<foreach>标签括起来后把标签直接当成字符串处理了。后面把外面的<![CDATA[ ]]>去掉后就能正常执行了。
10、
generator自动生成、Maven项目下SSM框架搭建;
pagehelper、transaction;
批量操作、多个参数直接设置传map集合《待定》
shrio权限管理
缓存数据库设计(有问题待查看)
优盘前台界面调用、税优健康险平台js调用
8、自动发送邮件
发送短信
投票事务demo
11、最代码
CSDN、博客园
线程安全问题
12、配置事务时出错
Multiple annotations found at this line:
    - cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'tx:annotation-driven'.
    - schema_reference.4: Failed to read schema document 'http://www.springframework.org/schema/tx/spring-tx-3.0.xsd', because 1)
could not find the document; 2) the document could not be
     read; 3) the root element of the document is not <xsd:schema>.
这个问题网上有很好的解决方法,http://blog.csdn.net/bluishglc/article/details/7596118
但其实更简单的方法就是,将注解的那些xmlns文件以及xsi文件下关于注解的部分剪贴出去,然后重新粘贴进来,重新编译验证就可以了。
而这类问题出错的主要原因是:validate时,突然没有网络或者spring连接不上去。
  <!-- cache配置 -->
      <bean id="methodCacheInterceptor" class="com.cn.hnust.Interceptor.MethodCacheInterceptor" >
     <property name="redisUtil" ref="redisUtil" />
      </bean >
  <bean id="redisUtil" class="com.cn.hnust.Utils.RedisUtil" >
     <property name="redisTemplate" ref="redisTemplate" />
  </bean >   
 
  <!-- 需要加入缓存的类或方法 -->
<bean id="methodCachePointCut" class="org.springframework.aop.support.RegexpMethodPointcutAdvisor" >
   <property name="advice" >
     <ref local="methodCacheInterceptor" />
   </property>
   <property name="patterns" >
     <list>
      <!-- 确定正则表达式列表 -->
       <value>com\.mucfc\.msm\.service\.impl\...*ServiceImpl.*</value >
     </list>
   </property>
</bean >

message Request processing failed; nested exception is org.springframework.data.redis.RedisConnectionFailureException:
Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool
D:\application\redis\redisbin_x64

implements  Serializable
对象序列化问题
http://blog.csdn.net/tiantiandjava/article/details/46712313
测试类中向mysql插入数据乱码
最基础的测试缓存数据库redis测试成功,通用性设计
13、单点登录
14、redis缓存数据库一些思路
http://blog.csdn.net/wang_keng/article/details/51760806
15、文件上传下载
http://www.jb51.net/article/87228.htm
16、mybatis自动生成实体类插件配置参数是如何加载的呢?
如何打印日志?

ArtifactTransferException: Failure to transfer org.springframework:spring-beans:jar:4.2.5.RELEASE
from http://repo.maven.apache.org/maven2 was cached in the local repository,
resolution will not be reattempted until the update interval of central has elapsed or updates are forced.
Original error: Could not transfer artifact org.springframework:spring-beans:jar:4.2.5.RELEASE from/to central
(http://repo.maven.apache.org/maven2): No response received after 60000


17、测试
java -jar autotest -1.0.0








posted @ 2017-01-24 11:26  恒星照地球  阅读(255)  评论(0编辑  收藏  举报