Spring2

一:request.getParameter(“userName”);获取传入的值

二:Mybatis配置时只需要将generator.properties中的table名字换成数据库中的表名称,再使用Maven工具直接
generator就行了,将生成三个文件[table名称]Mapper.xml,dao接口和一个entity实体类
/*
private ApplicationContext applicationContext;
@Autowired
private MessageMapper mapper;

    // 加载spring配置文件
    applicationContext = new ClassPathXmlApplicationContext("classpath:spring/applicationContext.xml");
    // 导入需要测试的
    mapper = applicationContext.getBean(MessageMapper.class);
    Message message = new Message();
    message.setCommand("吃饭6");
    message.setContent("睡觉");
    message.setDescription("打豆豆");
    int result = mapper.insert(message);
    System.out.println(result);
    assert (result == 1);

*/

三:当自己想写符合自己需求的SQL语句时,只需要MessageMapper.xml里写就行了,MessageMapper.xml典型的语句为:

  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
    select 
    <include refid="Base_Column_List" />
    from message
    where id = #{id,jdbcType=INTEGER}
  </select>

然后自己写的时候需要把id的值改写成自己命名的,这个id相当于一个类名,下面是我写的SQL语句,parameterType为调用SQL语句时传入的值的类型, resultType为返回值类型,

  <select id="selectByName" resultType="java.lang.String" parameterType="java.lang.String">
    select group_concat(command)<!--group_concat结果集有多个时确保可以接收-->
    from message
    where command= #{command,jdbcType=VARCHAR}
  </select>

然后还需要再相应的的Mapper接口中定义这个id名对应的方法

String selectByName(String command);

最后是mybatis的使用方法:

@Controller
@RequestMapping("/MySSM/controller")
public class signInController {
    private ApplicationContext applicationContext;

    @Autowired
    private LogindataMapper mapper;
    @RequestMapping(value = "/signInResultPage")
    public ModelAndView signInResult(HttpServletRequest request) {
        // 加载spring配置文件
        applicationContext = new ClassPathXmlApplicationContext("classpath:spring/applicationContext.xml");
        // 获取bean
        mapper = applicationContext.getBean(LogindataMapper.class);
        //定义返回的视图
        ModelAndView mAv=new ModelAndView();
        mAv.setViewName("signInResultPage");
        String userName=request.getParameter("userName");//获取输入的账号
        String password=request.getParameter("password");//获取输入的密码
        //开始添加数据,这里需要控制如果用户名相同的话则不予以添加
        if(mapper.selectByName(userName)==null){
            Logindata logindata=new Logindata();
            logindata.setUsername(userName);
            logindata.setPassword(password);
            int result = mapper.insert(logindata);
            System.out.println("插入结果->:"+result);
            assert (result == 1);
        }
        else {
            mAv.setViewName("errorPage");
        }
        return mAv;
    }
}

定义一个ApplicationContext以获取bean 然后定义bean类型也就是mapper类型就可以直接调用SQL语句了

放一个github地址:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值