Spring updateByNamedParam 방법 은 Spring 저장 데 이 터 를 사용 하여 id SqlUpdate 클래스 로 되 돌려 줍 니 다.

3483 단어 springhtmlBlog
전날 에 쓴 글 도 Spring 이 데 이 터 를 저장 하여 id SqlUpdate 류 에 사용 하 는 주소 입 니 다hi.baidu.com/%CD%F5%D7%D36%BA%C5/blog/item/e9458e38f63001fab211c7f2.html그러나 안에 있 는 매개 변 수 는 비교적 적 고 3 개 밖 에 없습니다.10 여 개의 인자 가 나 왔 을 때 링크 에 있 는 방법 을 분명히 사용 해 서 는 안 된다.대응 하 는 게 귀 찮 으 니까.다음 방법 으로 바 꾼 후 코드 가 많아 졌 지만 더욱 명확 하고 뚜렷 하기 때문에 열 값 을 많이 삽입 하면 이 방법 을 추천 합 니 다.
public int saveMenu(MenuForm menu) throws DataAccessException {
        StringBuffer sb = new StringBuffer();
        sb
                .append("INSERT INTO websys_adminmenu(pid,name,url,title,target,icon,iconOpen,open,`index`,description,`show`,inTime)");
        sb
                .append("VALUES(:pid,:name,:url,:title,:target,:icon,:iconOpen,:open,:index,:description,:show,now())");
        SqlUpdate sqlUpdate = new SqlUpdate(jdbcTemplate.getDataSource(), sb
                .toString());
        sqlUpdate.declareParameter(new SqlParameter("pid", Types.INTEGER));
        sqlUpdate.declareParameter(new SqlParameter("name", Types.VARCHAR));
        sqlUpdate.declareParameter(new SqlParameter("url", Types.VARCHAR));
        sqlUpdate.declareParameter(new SqlParameter("title", Types.VARCHAR));
        sqlUpdate.declareParameter(new SqlParameter("target", Types.VARCHAR));
        sqlUpdate.declareParameter(new SqlParameter("icon", Types.VARCHAR));
        sqlUpdate.declareParameter(new SqlParameter("iconOpen", Types.VARCHAR));
        sqlUpdate.declareParameter(new SqlParameter("open", Types.BIT));
        sqlUpdate.declareParameter(new SqlParameter("index", Types.BIT));
        sqlUpdate.declareParameter(new SqlParameter("description",
                Types.VARCHAR));
        sqlUpdate.declareParameter(new SqlParameter("show", Types.BIT));
        sqlUpdate.setReturnGeneratedKeys(true);
        sqlUpdate.compile();
        KeyHolder keyHolder = new GeneratedKeyHolder();
        Map paramMap = new HashMap();
        paramMap.put("pid", menu.getPid());
        paramMap.put("name", menu.getName().replace("'", "\'"));
        paramMap.put("url", menu.getUrl().replace("'", "\'"));
        paramMap.put("title", menu.getTitle().replace("'", "\'"));
        paramMap.put("target", menu.getTarget().replace("'", "\'"));
        paramMap.put("icon", menu.getIcon().replace("'", "\'"));
        paramMap.put("iconOpen", menu.getIconOpen().replace("'", "\'"));
        paramMap.put("open", menu.isOpen());
        paramMap.put("index", menu.isIndex());
        paramMap.put("description", menu.getDescription().replace("'", "\'"));
        paramMap.put("show", menu.isShow());
        int i = sqlUpdate.updateByNamedParam(paramMap, keyHolder);
        if (i == 0 || null == keyHolder.getKey())//         0
            return 0;
        else {
            return keyHolder.getKey().intValue();
        }
    }

좋은 웹페이지 즐겨찾기