我在网上查过了,大家都是得不到sqlsession,我直接factory都得不到
这是配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="oracle.jdbc.driver.OracleDriver"/>
<property name="url" value="jdbc:oracle:thin:@localhost:1521:orcl"/>
<property name="username" value="luoyang"/>
<property name="password" value="java"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/mapper/StudentMapper.xml"/>
</configuration>
<?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.mapper.IStudentDao">
<resultMap type="com.bean.Student" id="rst_stu">
<id column="sid" property="sid"/>
<result column="sname" property="sname"/>
<result column="sex" property="sex"/>
<result column="address" property="address"/>
<result column="birthday" property="birthday"/>
<result column="cid" property="cid"/>
</resultMap>
<insert id="save" parameterType="com.bean.Student">
insert into student values (seq_sid.nextval,#{sname},#{sex},#{address},#{birthday},#{cid})
</insert>
<update id="update" parameterType="com.bean.Student">
update student set sname=#{sname},sex=#{sex},address=#{address},birthday=#{birthday},cid=#{cid}
where sid=#{sid}
</update>
<delete id="delById" parameterType="int">
delete student set where sid=#{sid}
</update>
<select id="findById" parameterType="int" resultType="com.bean.Student">
select * from student where sid=#{sid}
</select>
<select id="findAll" resultType="com.bean.Student">
select * from student where 1=1 order by sid
</select>
<select id="doinit" resultType="com.bean.Clazz">
select * from clazz where 1=1 order by cid
</select>
</mapper>
package com.test;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.util.Date;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import com.bean.*;
import com.mapper.*;
public class StudentTest {
public static void main(String[] args) {
SqlSessionFactory sessionFactory=null;
SqlSession session = null;
//获取sqlsessionfactory 对象
try {
InputStream is=Resources.getResourceAsStream("mybaties.xml");
System.out.println(is.available());
sessionFactory=new SqlSessionFactoryBuilder().build(is);
System.out.println(sessionFactory);
//获取sqlsession对象
session=sessionFactory.openSession();
Student st=new Student("高原", "男","运城",new Date(),1);
int row=session.insert("com.mapper.IStudentDao.save", st);
if(row>0){
session.commit();
System.out.println("保存成功");
}else{
System.out.println("保存失败");
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
session.close();
}
}
}
demo
import org.apache.ibatis.session.SqlSessionFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.support.GenericXmlApplicationContext;
import com.fly.demo.service.UserService;
/**
*
* MainRun
*
* @author 00fly
* @version [版本号, 2018-11-01]
* @see [相关类/方法]
* @since [产品/模块版本]
*/
public class MainRun
{
private static Logger logger = LoggerFactory.getLogger(MainRun.class);
/**
* main
*
* @param args
* @see [类、类#方法、类#成员]
*/
public static void main(String[] args)
{
GenericXmlApplicationContext context = new GenericXmlApplicationContext();
context.setValidating(false);
context.load("classpath:/spring/spring.xml");
context.refresh();
int i = 1;
for (String beanName : context.getBeanDefinitionNames())
{
logger.info("{}.\t{}", i, beanName);
i++;
}
SqlSessionFactory sessionFactory = context.getBean(SqlSessionFactory.class);
logger.info("{}", sessionFactory.openSession());
UserService userservice = context.getBean(UserService.class);
logger.info("{}", userservice.selectById(1L));
context.close();
}
}
配置文件不是mybatis.cfg.xml吗?