Springboot初步开发

Springboot初步开发

客户端和服务器端
客户端是h5页面,服务器端是java后台
本次目的是结合数据库进行操作,本次完成的功能是添加数据进数据库
第一步 pom文件添加依赖和在配置文件中添加信息
在pom文件中添加oracle数据库和druid连接池的依赖

        <!--        oracle数据库-->
        <dependency>
            <groupId>com.oracle</groupId>
            <artifactId>ojdbc6</artifactId>
            <version>11.2.0.3.0</version>
        </dependency>
        <!--        阿里的数据源-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.1.9</version>
        </dependency>

在配置文件中添加spring和myabtis有关的配置文件

spring:
  datasource:
    name: test
    type: com.alibaba.druid.pool.DruidDataSource
    druid:
      filter: stat
      driver-class-name: oracle.jdbc.OracleDriver
      url: jdbc:oracle:thin:@localhost:1521:xe
      username: system
      password: sun

mybatis:
  mapper-locations: classpath:mapper/*.xml
  type-aliases-package: com.exam.demo.model
  

第二步 编写model层的pojo文件
这个联系数据库内的和h5页面的字段,名字要和h5页面的字段一样

public class pojo {
    int id;
    String userName;
    String pass;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPass() {
        return pass;
    }

    public void setPass(String pass) {
        this.pass = pass;
    }
}

接着我们写个是否成功的方法:

public class chenggongyanzheng {
    int code;
    String message;

    public int getCode() {
        return code;
    }

    public void setCode(int code) {
        this.code = code;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }
}

第三步 编写mapper文件和dao层文件
本次完成的是注册功能,所以需求是insert
首先导入mapper的头文件,这是每个mapper都要这样写的

<?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">

接着我们去dao层建立对应的接口:
@Repository注解标记了这个是dao层

@Repository
public interface lala {
    int insertu(pojo p);
}

接着写mappper对应的方法:
namespace要对应dao层

<mapper namespace="com.exam.demo.dao.lala">
    <insert id="insertu">
        <selectKey keyProperty="id" order="BEFORE" resultType="java.lang.Integer">
            select o_user_seq.nextval from dual
        </selectKey>
        insert into o_user(id,userName,pass) values (#{id},#{userName},#{pass})
    </insert>
</mapper>

第四步 编写service层及其实现方法
先写接口,在写实现的方法

public interface hualala {
    chenggongyanzheng shalala(pojo p);
}

紧接着我们写实现方法:

  1. @Service(value = “userservice”)是标记这是service层,value的值的controller层要调用的值,是为了保证在controller层autowired调用时的唯一性,也可以不写value
  2. @Autowired是自动调用的意思,这里我们用他调用dao层接口
  3. 通过设置model类中的chenggongyanzheng我们就能知道执行成功没
@Service(value = "userservice")
public class hualalaimpl implements hualala{
    @Autowired
    lala lal;   //dao层接口
    chenggongyanzheng f;
    @Override
    public chenggongyanzheng shalala(pojo p) {
        int c=lal.insertu(p);
        if (c>0)
        {
            f=new chenggongyanzheng();
            f.setCode(200);
            f.setMessage("succ");
        }
        else {
            f=new chenggongyanzheng();
            f.setCode(201);
            f.setMessage("false");
        }
        return f;
    }
}

第五步 编写controller层

  1. @Controller是标记这是controller层
  2. @RequestMapping(value = “/reg2”)是标记等下进这个路径
  3. 第一个reg2方法的意思是输入的路径为/user/reg2的时候,进入reg页面
  4. 第二个toreg方法则是reg页面提交表单为toReg时,model和pojo结合了,所以pojo的值,即为下面form表单中userName和pass的值,由此看来,form表单的名字和pojo要对应好
  5. redirect是直接转向到地址
@Controller
@RequestMapping(value = "/user")
public class Usercontroller {
    @Autowired
    private hualala hua;
    @RequestMapping(value = "/reg2")
    public String reg2(){
        return "reg";
    }

    @RequestMapping("/toReg")
    public String toreg(pojo p, Model m){
        System.out.println(p.getUserName());
        chenggongyanzheng chenggongyanzheng=hua.shalala(p);
        if(chenggongyanzheng.getCode()==200){
            //redirect直接转向到地址
            return "redirect:/user/login";
        }
        else {
            return "redirect:/user/reg2";
        }
    }
}

附上reg页面的提交表单:

<form action="/user/toReg" method="post">

    <div id="wrap">
        <div id="head">
            <div class="h1d1"></div>
            <div class="h1d2">已有账号?<a href="/user/login">请登录></a></div>
            <div><img src="/img/zc2.png"/></div>
        </div>
        <div id="zhong">
            <div class="z1">
                <div><input type="text" name ="userName" id="userName"  placeholder="输入用户名" required/></div>
                <div><input type="text"  name="pass" id="pass" placeholder="请输入密码" required/></div>
                <div class="z1h1"><input type="submit" value="下一步"/></div>
            </div>
        </div>
        <div id="xia"><img src="/img/dlxia.png"/></div>
    </div>
</form>

第六步 在启动文件中添加注解

在这里插入图片描述
在启动的java文件中,头上加入这句话

@MapperScan("com.exam.demo.dao")
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值