• 总结:String类型与Int类型的转换【实现插入操作主键自增】


    1、String类型(此类型是数字格式的字符串类型)转换成Int类型

      String str = "10000";

      转换成Int类型:

      int num = Integer.parseInt(str);

      得到的结果是:int类型的10000

    2、int类型转换成String类型

      int n = 1000;

      n = n +1;

      String str = String.valueOf(n);

      // 或者另外一种转换方式:  String st = n +"";

      得到的结果是:String类型的字符串1001

      【在写插入操作时,主键的自动增长{先查询到主键的最大值,然后再进行自增,再格式的转换即可},主键的格式,格式的增长就会用到格式的转换】

    比如:【格式的转换

    public class IntTest {
    	public static void main(String[] args) {
    		//由字符串格式转换数字格式
    		String s = "10000";
    		int a = Integer.parseInt(s);
    		a = a+1;
    		System.out.println("数字格式:"+a);//---得到的结果是:数字格式:10001
    		//然后通过数字格式转换成字符串格式
    		String str = String.valueOf(a);
    		System.out.println(a+"");
    		System.out.println("转换成字符串格式:"+str);//-----得到的结果是:转换成字符串格式:10001
    	}
    

      【主键的设置】当插入一条数据时,使得主键自动增长的样式进行,代码如下,且出现的问题总结如下:

      再相应的sqlMap.xml配置文件中写出“查找最大id值的sql语句”

    <!-- 查询到最大的id值 -->
    	<select id="selectMaxId" resultType="java.lang.String">
    		select MAX(id) from fdx.dbo.[User]
    	</select>
    

     然后在dao接口中,具体写一个方法:查找到最大的id值,为了再插入的方法中调用,进而实现主键的自动增长

      

    //查询最大id值
    	public String selectMaxId();
    

      然后再serviceImpl实现类中写出具体的实现方法:

    	public void insertUser(User user) {
    		//调用方法,获取到最大的id值
    		String id = userDao.selectMaxId();
    		System.out.println("获取到的最大id值:"+id);
    		int num = Integer.parseInt(id);
    		num = num +1;
    		//将数字转换成字符串格式
    		String sid = String.valueOf(num);
    		//对主键id,出生日期(获取到当前系统的日期)进行设置;
    		user.setId(sid);
    		user.setBirth(new Date());
    		userDao.insert(user);
    		System.out.println("插入之后:测试成功");
    	}
    

      而此时,出现了异常

      

      所以要对得到的结果,进行去除空格处理:使用.trim()方法即可;

      

    	public void insertUser(User user) {
    		//调用方法,获取到最大的id值
    		String id = userDao.selectMaxId();
    		System.out.println("获取到的最大id值:"+id);
    		int num = Integer.parseInt(id.trim());
              //再没有trim()方法时,出现异常;Integer.parseInt(str),参数只能是纯数字的组合才能转换,
              //所以使用trim()方法,进行去除一下空格;且得到的id值里面有空格的存在; num = num +1; //将数字转换成字符串格式 String sid = String.valueOf(num); //对主键id,出生日期(获取到当前系统的日期)进行设置; user.setId(sid); user.setBirth(new Date()); userDao.insert(user); System.out.println("插入之后:测试成功"); }

      添加.trim()方法之后,得到结果,实现了主键的自动增长;

  • 相关阅读:
    设计模式(十五)---桥梁模式
    设计模式(十四)---门面模式
    设计模式(十三)---享元模式
    设计模式(十二)---代理模式
    设计模式(十一)---装饰者模式
    设计模式(十)---合成模式
    设计模式(九)---缺省适配器模式
    设计模式(八)---适配器模式
    设计模式(七)---原始模型模式
    一张图看懂JavaScript中数组的迭代方法:forEach、map、filter、reduce、every、some
  • 原文地址:https://www.cnblogs.com/FanSunny/p/4864015.html
Copyright © 2020-2023  润新知