51,395
社区成员




<!-- Mysql -->
<bean id="mysqlSqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="mysqlSource" />
<property name="mapperLocations" >
<list>
<value>classpath:com/jwapp/core/dao/*Mysql.xml</value>
<value>classpath:com/jwapp/core/dao/*/*Mysql.xml</value>
</list>
</property>
<property name="typeAliasesPackage" value="com.jwapp.core.bean" />
<!-- <list>
<value>com.jwapp.core.bean</value>
<value>com.jwapp.core.bean</value>
</list>
</property> -->
<property name="configLocation" value="classpath:mybatis-config.xml" />
</bean>
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.jwapp.core.dao.user.TokenDao">
<resultMap type="com.jwapp.core.bean.user.Token" id="userMap">
<id column="zjh" property="zjh" jdbcType="VARCHAR" />
<result column="mm" property="mm" jdbcType="VARCHAR" />
<result column="yhlbdm" property="yhlbdm" jdbcType="VARCHAR" />
</resultMap>
<select id="findToken" parameterType="Token" resultMap="userMap">
select *from tb_token where
<if test="userId != null or token != null">
where
</if>
<if test="userId != null and token != null">
TokenDao是在这个包下面吗?
static{
CustomerContextHolder.setContextType(CustomerContextHolder.SESSION_FACTORY_ORACLE);
}
但是不知道为什么,这个静态块没起作用。于是无就把选择数据库的这个操作给放在函数里了
@Transactional(readOnly = true)
public int save(Token token) {
CustomerContextHolder.setContextType(CustomerContextHolder.SESSION_FACTORY_MYSQL);
return tokenDao.save(token);
}
可是为什么 static 块 会不起作用呢?
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.jwapp.core.dao.user.TokenDao">
<resultMap type="com.jwapp.core.bean.user.Token" id="userMap">
<id column="zjh" property="zjh" jdbcType="VARCHAR" />
<result column="mm" property="mm" jdbcType="VARCHAR" />
<result column="yhlbdm" property="yhlbdm" jdbcType="VARCHAR" />
</resultMap>
<select id="findToken" parameterType="Token" resultMap="userMap">
select *from tb_token where
<if test="userId != null or token != null">
where
</if>
<if test="userId != null and token != null">
userId = #{userId} and token = #{token}
</if>
<if test="userId != null and token == null">
userId = #{userId}
</if>
<if test="token != null and userId == null">
token = #{token}
</if>
</select>
<insert id="save" parameterType="Token" >
insert into tb_token values (#{userId},#{token});
</insert>
<update id="update" parameterType="Token">
update tb_token set token = #{token} where userId = #{userId};
</update>
</mapper>
@Autowired
private TokenService tokenService;
@Test
public void insert(){
Token token = new Token();
token.setToken("123asd");
token.setUserId("11111");
int i = tokenService.save(token);
System.out.println(i);
}