请写出getAttribute()和getParameter(参数)的区别;
时间: 2023-03-30 15:04:21 浏览: 106
getAttribute()和getParameter()都是Java Servlet中的方法,但它们的作用不同。getAttribute()方法用于获取在请求期间存储在ServletRequest对象中的属性值,而getParameter()方法用于获取客户端通过HTTP请求发送的参数值。getParameter()方法需要传入参数名作为参数,而getAttribute()方法不需要。
相关问题
请写出getAttribute()和getParameter(参数)的区别;
getAttribute()和getParameter()都是用于获取HTTP请求中的参数的方法,但它们的作用不同。getAttribute()用于获取请求中的属性值,而getParameter()用于获取请求中的参数值。具体来说,getAttribute()方法用于获取在请求中设置的属性值,而getParameter()方法用于获取请求中的参数值,例如表单提交的参数。此外,getParameter()方法需要传入参数名作为参数,而getAttribute()方法不需要。
public String list() { // 检测是否有登录,没登录则跳转到登录页面 if (!checkLogin()) { return showError("尚未登录", "./login.do"); } String order = Request.get("order", "id"); // 获取前台提交的URL参数 order 如果没有则设置为id String sort = Request.get("sort", "desc"); // 获取前台提交的URL参数 sort 如果没有则设置为desc int pagesize = Request.getInt("pagesize", 12); // 获取前台一页多少行数据 Example example = new Example(Shenqing.class); // 创建一个扩展搜索类 Example.Criteria criteria = example.createCriteria(); // 创建一个扩展搜索条件类 String where = " 1=1 "; // 创建初始条件为:1=1 where += getWhere(); // 从方法中获取url 上的参数,并写成 sql条件语句 criteria.andCondition(where); // 将条件写进上面的扩展条件类中 if (sort.equals("desc")) { // 判断前台提交的sort 参数是否等于 desc倒序 是则使用倒序,否则使用正序 example.orderBy(order).desc(); // 把sql 语句设置成倒序 } else { example.orderBy(order).asc(); // 把 sql 设置成正序 } int page = request.getParameter("page") == null ? 1 : Integer.valueOf(request.getParameter("page")); // 获取前台提交的URL参数 page 如果没有则设置为1 page = Math.max(1, page); // 取两个数的最大值,防止page 小于1 List<Shenqing> list = service.selectPageExample(example, page, pagesize); // 获取当前页的行数 // 将列表写给界面使用 assign("totalCount", request.getAttribute("totalCount")); assign("list", list); assign("orderby", order); // 把当前排序结果写进前台 assign("sort", sort); // 把当前排序结果写进前台 return json(); // 将数据写给前端 }
这是一个 Java Web 开发中的一个列表页面的控制器方法。它首先检测用户是否已经登录,如果没有登录则跳转到登录页面。然后它从前端获取一些参数,比如排序方式、排序字段、每页显示的行数等等。接下来,它创建了一个 Example 对象,用于扩展搜索。然后,它根据前端传递的参数构造出一个 SQL 条件语句,并将其添加到 Example 对象中的 Criteria 对象中。接着,它根据前端传递的排序方式和排序字段设置 SQL 的排序方式。最后,它根据前端传递的页码和每页显示的行数查询数据,并将数据返回给前端。
阅读全文