zoukankan      html  css  js  c++  java
  • springmvc+mybatis 根据数据的id删除数据

    1. 数据库表

    2. notices.jsp

    <form action="#" method="post">
    <fieldset>
        <legend>新闻浏览:</legend>
        <table width="800" border="1" cellspacing="0" cellpadding="0">
        <tbody style="text-align: center">
            <tr>
                <th scope="col">编号</th>
                <th width="260" scope="col">标题</th>
                <th scope="col">作者</th>
                <th width="300" scope="col">内容</th>
                <th scope="col" colspan="3">操作</th>
            </tr>
            <c:forEach items="${requestScope.news_list }" var="news">
            <tr>
                <td>${news.newsID }</td>
                <td><div id="overflow">${news.newsTitle }</div></td>
                <td>${news.newsAuthor }</td>
                <td><div id="overflow">${news.newsContent }</div></td>
                <td><a href="#">预览</a></td>
                <td><a href="#">修改</a></td>
                <td><a href="deleteNews?id=${news.newsID }">删除</a></td>
            </tr>
            </c:forEach>
      
        </tbody>
        </table>
    </fieldset>
    </form>

    <a href="deleteNews?id=${news.newsID }">,这里id是后台要获取的参数名称,${news.newsID }是要获取的参数内容,
    在controller中使用request.getparameter("id")取出这个id的值,即要删除的新闻的id

    controller中也可以通过方法的参数直接获取id
    前台到后台通过表单传递数据时:(1) 表单的name属性值和接受的参数同名。(2) 表单的name属性值和接收对象的属性同名。

    3. NewsMapper

    public interface NewsMapper {
        
        //根据id删除新闻
        @Delete("delete from news where newsID= #{ID}")
        void deleteNewByID(@Param("ID") Integer newsID);
    
    }

    4. NewsService

    public interface NewsService {
       
        /**
         * 根据新闻id删除新闻
         * @param newsID
         */
        void deleteNews(Integer newsID);  
    }

    删除news的接口

    5. NewsServiceImpl

    @Transactional(propagation=Propagation.REQUIRED,isolation=Isolation.DEFAULT)
    @Service("newsService")
    public class NewsServiceImpl implements NewsService {
        
        /**
         * 自动注入持久层Mapper对象
         */
        
        @Autowired
        private NewsMapper newsMapper;
    
    
        /*******新闻接口实现************/
        
        @Override
        public void deleteNews(Integer newsID) {
            // TODO Auto-generated method stub
            newsMapper.deleteNewByID(newsID);
        }
    }

    实现删除news的方法

    6. NewsController

    @Controller
    public class NewsController {
        
        /**
         * 自动注入newsService
         */
        @Autowired
        @Qualifier("newsService")
        private NewsService newsService;
        
        //根据获取的id删除新闻
        @RequestMapping(value="/deleteNews")
        public ModelAndView deleteNews(HttpServletRequest request, ModelAndView mv){
            Integer newsID = Integer.valueOf(request.getParameter("id"));
            //判断id是否为空
            if(newsID != null){
                newsService.deleteNews(newsID);
            }
            //用redirect进行重定向
            mv.setViewName("redirect:/htNews");
            return mv;
        }
    
    }

    在控制器中用request.getParameter("id")获取要删除的新闻的id

  • 相关阅读:
    搜狗五笔快捷键
    [原抄] Potplayer 1.7.2710 快捷键
    权限设置并未向在应用程序容器 不可用
    fork( )函数(转载)
    软件开发中的迭代(转载)
    进程间通信的方式(转载)
    P NP NPC(1)(转载)
    P NP NPC(2)(转载)
    大小端字节序
    求n对括号的排列组合(卡特兰数)
  • 原文地址:https://www.cnblogs.com/zeroingToOne/p/8762861.html
Copyright © 2011-2022 走看看