Spring+SpringMVC+MyBatis遇到的所有问题汇总

整合所需所有jar包:http://download.csdn.net/detail/u013758756/9204049
数据库问题:
1、oracle数据库中建立USER表或者字段为UID时需要添加”“引号,因USER是oracle表中关键字。查询的时候USER和UID也都要添加引号。
例如; CREATE TABLE "USER"(
"UID" NUMBER(3) PRIMARY KEY,
UPassWord varchar(20) not null,
UName varchar(10) not null,
ULogURL varchar(20),
UPhone varchar(15),
UType char(2),
UBalance number(5,2)
);
   SELECT * FROM "USER" WHERE "UID"=1;  
2、oracle实现字段自动增长需要建立序列,添加触发器
--创建自增长序列
CREATE SEQUENCE UserIncrease_Sequence
INCREMENT BY 1   -- 每次加几个  
    START WITH 1     -- 从1开始计数  
    NOMAXVALUE       -- 不设置最大值  
    NOCYCLE          -- 一直累加,不循环  
    CACHE 10; 

--创建触发器
CREATE or replace TRIGGER User_Increase BEFORE
insert ON  "User" FOR EACH ROW
begin
select UserIncrease_Sequence.nextval into:New.UID from dual;
end;
COMMIT;
3、oracle中的varchar类型数据无法匹配Java中的String类型数据,varchar2可以匹配String类型。
MyBaits中的问题:
1、数据库查询出来的字段类型要和封装对象的类型要一致。
2、${UID}和#{UID}是不一样的,${}解析穿过来的参数值不带单引号,#{}解析传过来参数带单引号。
3、  <if test="UName != null">中,“!=”是不等号,是一个判断符号,中间不能有空格。
4、<delete>标签不配resultType=""参数,但又返回值是数据库中改变的行数。
5、xxMapper.java要和xxMapper.xml要同包同名。其中xxMapper.java 为接口,只写方法,方法名要和xxMapper.xml 中定义的id一致。
中文乱码问题:
前台通过ajax想后台请求数据之后,后台通过@ResponseBody返回非.jsp,.html等数据格式文件时因org.springframework.http.converter.StringHttpMessageConverter累
中的默认编码方式是iso8859-1而导致UTF-8编码的数据引起中文乱码。
解决问题需要添加一下配置更改编码方式为UTF-8编码( 注意SpringMVC版本问题,在3.0版本中不可用,4.2版本可用,下载链接:http://download.csdn.net/detail/u013758756/9204049)
<!-- 注解解析器 -->
<mvc:annotation-driven>
<mvc:message-converters register-defaults="true">
<bean class="org.springframework.http.converter.StringHttpMessageConverter">
 <property name="supportedMediaTypes" value="text/html;charset=UTF-8"/>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>
关于jar包找不到问题:
jar包要放在/WEB-INF/lib目录下。




随着项目进展正在更新中……

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值