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

springmvc+mybatis 根据数据的id删除数据的更多相关文章

  1. MySQL行(记录)的详细操作一 介绍 二 插入数据INSERT 三 更新数据UPDATE 四 删除数据DELETE 五 查询数据SELECT 六 权限管理

    MySQL行(记录)的详细操作 阅读目录 一 介绍 二 插入数据INSERT 三 更新数据UPDATE 四 删除数据DELETE 五 查询数据SELECT 六 权限管理 一 介绍 MySQL数据操作: ...

  2. SQL中CRUD C——create 添加数据 R——read 读取数据 U——update 修改数据 D——delete 删除数据

    在SQL server中对数据库的操作: 删除表:drop table 表名修改表:alter table 表名 添加列add 列名 列类型alter table 表名 drop column 列名 ...

  3. mybatis 根据多个id查询数据 foreach标签

    //根据设备多个id获取设备信息 public List<Devices> getDevicesAll(@Param("devicesIds") String[] de ...

  4. MySQL基本SQL语句之数据插入、删除数据和更新数据

    一.INSERT插入数据: 方法一:批量插入 基本语法: INSERT INTO tb_name (col1, col2, ...) VALUES (val1, val2, ...)[,(val1, ...

  5. PHP批量写入数据、批量删除数据

    批量插入可以参考$sql = "insert into data (id,ip,data)  values ";for($i=0;$i<100;$i++){$sqls[]=& ...

  6. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(18)-过滤器的使用和批量删除数据(伪删除和直接删除)

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(18)-过滤器的使用和批量删除数据(伪删除和直接删除) ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   ...

  7. Mysql 删除数据表的三种方式详解

    用法: 1.当你不再需要该表时, 用 drop; 2.当你仍要保留该表,但要删除所有记录时, 用 truncate; 3.当你要删除部分记录或者有可能会后悔的话, 用 delete. 删除强度:dro ...

  8. solr删除数据的4种方便快捷的方式

    1.在solr客户端,访问你的索引库(我认为最方便的方法) 1)documents type 选择 XML  2)documents 输入下面语句 <delete><query> ...

  9. 【JDBC】学习路径6-SQL插入、修改、删除数据

    第一章:插入使用.executeUpdate(); 返回的是受到影响的数据条数. public static boolean insert(String username,String passwor ...

随机推荐

  1. Tomcat 基础

    一.Tomcat服务器端口的配置 Tomcat的所有配置都放在conf文件夹之中,里面的server.xml文件是配置的核心文件. 如果想修改Tomcat服务器的启动端口,则可以在server.xml ...

  2. Maven+spring+springMVC+mybatis+Junit+Log4j配置个人总结

          首先粘贴上项目引用地址:http://doc.okbase.net/fengshizty/archive/126397.html 这里对创建步骤不做过多解释,只是针对案例创建demo的一些 ...

  3. 快速上手IOT视觉化开发工具Node-RED

    作者:何信昱 现在有越来越多非专业背景但有创造热诚的Maker,想要进入物联网领域大展身手,但常常苦于无法撰写艰深难懂的程序代码,以及想要连接各种硬件与时下最流行的社群软件,却不知道如何使用开放给开发 ...

  4. php+mysql 数据库分表分段备份程序--宋正河

    <?php //宋正河 转载请注明出处 set_time_limit(0); header('content-type:text/html;charset=utf-8'); mysql_conn ...

  5. 互联网校招面试必备——Java多线程

    本文首发于我的个人博客:尾尾部落 本文是我刷了几十篇一线互联网校招java后端开发岗位的面经后总结的多线程相关题目,虽然有点小长,但是面试前看一看,相信能帮你轻松啃下多线程这块大骨头. 什么是进程,什 ...

  6. 使用json.dumps转换django queryset的datatime报错问题解决

    转换成json时使用的方法如下: json.dumps(list(models.userlist.objects.values("vu"))) 报错信息如下: Traceback ...

  7. Oracle VM VirtualBox 无法卸载 更新 和修复

    好久没更新Oracle VM VirtualBox 突然发现不能更新了 提示要某个msi文件,回想起来好像是被某个清理垃圾的软件清理掉了. 于是根据提示的版本号网上搜了种子又把安装包下载回来 在命令行 ...

  8. dumpe2fs命令详解

    基础命令学习目录首页   dumpe2fs 显示ext2.ext3.ext4文件系统的超级快和块组信息.此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.SUSE.openSUSE ...

  9. js格式化json字符串和json对象

    1,格式化json对象 var json = {"@odata.context":"$metadata#AddTableOne_466281s","v ...

  10. 第一个scrim任务分布

    一.项目经理:郭健豪 二.scrim分工 杨广鑫.郭健豪:制作第一个精选页面布局,和代码实现.如:实现图书推荐布局中图书的排布,搜索框代码的实现,消息提示的跳转 李明.郑涛:实现第一个精选页面数据库的 ...