//定义URL映射对应
@Namespace("/newsinfo")
// 定义名为reload的result重定向到newsinfo.action
@Results( { @Result(name = CrudActionSupport.RELOAD, location = "newsinfo.action", type = "redirect"),
@Result(name = "viewDetail",location="newsinfoview.jsp", type = "dispatcher")})
public class NewsInfoAction extends CrudActionSupport<NewsInfo>{
private static final long serialVersionUID = 1L;
private static Logger logger = LoggerFactory.getLogger(NewsInfoAction.class);
private Page<NewsInfo> page = new Page<NewsInfo>(GlobalParameter.PAGESIZE);// 每页条记录
private NewsInfoService newsinfoService;
private NewsInfo newsinfo;
private String id;
private String status;//是否发布
private String failure;//是否失效
private String releasetime;//发布时间
private String herdlines;//新闻标题
private String paramId;
public User user = (User) Struts2Utils.getRequest().getSession().getAttribute(GlobalParameter.SESSION_NAME);//登陆用户
/**
*显示列表
**/
public String list() throws Exception {
if (!page.isOrderBySetted()) {
page.setOrder(Page.ASC);
}
page = newsinfoService.searchNewsInfo(page, Struts2Utils.getRequest().getParameterMap(), user.getOperator_id());
List<NewsInfo> result = page.getResult();
for(int i=0;i<result.size();i++){//截取显示内容长度
NewsInfo news = result.get(i);
if(news.getContents().length()>16){
String contents = news.getContents().substring(0,16);
news.setContents(contents+"...");
}
if(news.getHerdlines().length()>6){
String herdlines = news.getHerdlines().substring(0,6);
news.setHerdlines(herdlines);
}
}
Struts2Utils.getRequest().setAttribute("page", page);
return SUCCESS;
}
/**
* 根据id查询新闻
* */
@Override
public String input() throws Exception {
if (!StringUtils.isBlank(id)) {
Struts2Utils.getRequest().setAttribute("beforeEntity", XMLUtil.buildXMLByObject(newsinfo,NewsInfo.class.getDeclaredFields()));
newsinfo = newsinfoService.getNewsInfo(id);
SimpleDateFormat sip=new SimpleDateFormat("yyyy-MM-dd");
Struts2Utils.getRequest().setAttribute("created", sip.format(newsinfo.getCreated()));
Struts2Utils.getRequest().setAttribute("updated", sip.format(newsinfo.getUpdated()));
}
return INPUT;
}
/**
*
**/
@Override
public String save() throws Exception {
String returnPath = null; // 新增返回
if (!StringUtils.isBlank(newsinfo.getId())){// 修改
newsinfo.setUpdateoper(user.getOperator_name());
returnPath = RELOAD; // 修改返回
}
newsinfo.setFounder(user.getOperator_name());
newsinfoService.saveNewsInfo(newsinfo);
return RELOAD ;
}
/**
*修改发布状态
**/
public String updateNewsStatus() throws Exception{
newsinfoService.updateNewsStatus(id);
return RELOAD;
}
/**
* 修改失效状态
**/
public String updateNewsFailure() throws Exception{
newsinfoService.updateNewsFailure(id);
return RELOAD;
}
public String toView() {
newsinfo = newsinfoService.getNewsInfo(paramId);
Struts2Utils.getRequest().setAttribute("newsinfo",newsinfo);
return "viewDetail";
}
@Override
protected void prepareModel() throws Exception {
if (!StringUtils.isBlank(id)) {
newsinfo = newsinfoService.getNewsInfo(id);
} else {
newsinfo = new NewsInfo();
}
}
@Override
public String delete() throws Exception {
return null;
}
@Override
public NewsInfo getModel() {
return newsinfo;
}
public Page<NewsInfo> getPage() {
return page;
}
public void setPage(Page<NewsInfo> page) {
this.page = page;
}
public NewsInfoService getNewsinfoService() {
return newsinfoService;
}
@Autowired
public void setNewsinfoService(NewsInfoService newsinfoService) {
this.newsinfoService = newsinfoService;
}
public void setId(String id) {
this.id = id;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getFailure() {
return failure;
}
public void setFailure(String failure) {
this.failure = failure;
}
public String getReleasetime() {
return releasetime;
}
public void setReleasetime(String releasetime) {
this.releasetime = releasetime;
}
public String getHerdlines() {
return herdlines;
}
public void setHerdlines(String herdlines) {
this.herdlines = herdlines;
}
public NewsInfo getNewsinfo() {
return newsinfo;
}
public void setNewsinfo(NewsInfo newsinfo) {
this.newsinfo = newsinfo;
}
public String getParamId() {
return paramId;
}
public void setParamId(String paramId) {
this.paramId = paramId;
}
分享到:
相关推荐
在本资源中,我们将探讨如何利用Struts2的注解方式来实现文件的上传和下载功能,这对于任何Web应用来说都是至关重要的特性。 首先,我们来看“注解”在Struts2中的作用。Struts2允许开发者使用注解来配置Action类,...
Struts2注解登录是Java Web开发中一种简化配置的方式,它允许开发者在代码中直接定义控制器、动作和结果页面的映射,从而避免了传统方式下需要在`struts.xml`配置文件中的繁琐设置。这种做法提高了代码的可读性和可...
首先,Struts2的注解允许我们避免传统的XML配置,从而实现更加简洁、直观的编程方式。在`Struts2Demo`项目中,我们可以看到Action类是如何通过注解进行声明的。例如,`@Action`注解用于定义一个方法作为处理HTTP请求...
Struts2提供了强大的表单验证功能,通过XML或者注解方式定义验证规则。例如,`@Size(max=10)`限制输入长度,`@NotEmpty`确保字段非空。 **7. 视图层** 视图通常由JSP页面构成,Struts2提供了标签库,如`s:property`...
在Struts2框架中,注解开发是一种简化配置的方式,它允许开发者在类或方法级别直接标注,以定义动作、结果、参数等信息,从而减少XML配置文件的使用。本知识点将详细介绍Struts2中的注解开发及其核心组件。 标题...
<constant name="struts.objectFactory" value="struts注解工厂类全限定名,比如:org.apache.struts2.spring.StrutsSpringObjectFactory" /> <package name="default" extends="struts-default"> ...
该例子为struts2注解与拦截器demo,利用myEclipse8.5开发,导入刚才后,自动加载所需struts2的jar包,可以直接运行,是初学struts2注解、拦截器很好的例子,保证10分钟学会2种技术,愿意分享给大家。
### Struts2 注解详解 #### 一、Struts2 Convention 插件介绍与使用 在 Struts2 框架的发展过程中,随着版本的更新和技术的演进,其配置方式也发生了变化。从 Struts2.1 版本开始,官方不再推荐使用 Codebehind ...
### Struts2注解详细说明 ...通过以上步骤,我们不仅了解了Struts2 Convention Plugin的基本原理和配置方式,还通过具体的示例加深了对其实现机制的理解。这对于简化开发流程、提高开发效率具有重要意义。
在这个小实例中,我们将深入探讨如何利用Struts2的注解来构建一个简洁而高效的Web应用。 首先,让我们了解什么是注解。在Java中,注解是一种元数据,它提供了一种安全的方法来向编译器、JVM或框架提供信息。Struts2...
在Struts2中,注解(Annotation)是开发者常用的一种元数据表示方式,它允许我们在代码中直接标注信息,简化配置文件。"struts2注解必须包"指的是Struts2提供的一系列注解,它们对于简化Struts2应用的配置和增强其...
然而,随着Java注解的广泛应用,Struts 2也引入了注解配置的方式来简化开发过程,避免了XML配置的繁琐。 在"Struts 2使用注解配置Action"中,我们不再需要在struts.xml中为每个Action类手动添加配置。相反,我们...
"Struts2 注解配置 Action 及拦截器几种不同方式写法对应的路径指向" Struts2 注解配置 Action 及拦截器是 Struts2 框架中的核心组件之一,负责处理用户请求并返回响应结果。下面,我们将通过详细的解释和示例代码...
Struts2 提供了一种使用注解替代 XML 配置的方式,使得开发者无需编写繁琐的 struts.xml 文件,即可完成Action的配置。 **Struts2 注解配置** 1. **Action 注解** - `@Action` 用于标记一个类或方法作为 Struts2 ...
本文将详细介绍如何使用Struts2框架结合注解(Annotation)的方式实现文件下载功能。 #### 一、Struts2框架简介 Struts2是一个基于MVC架构的Java Web应用框架,它继承了Struts1的优点,并在此基础上进行了改进。...
在Struts2中,Annotation注解的引入为开发者提供了更加灵活和便捷的配置方式,使得无需在XML配置文件中进行繁琐的设置,可以直接在类或方法上通过注解来进行配置。本文将深入探讨Struts2中的Annotation配置,以及...
本文将详细探讨如何使用Maven来整合Struts2,并利用全注解的方式简化配置,提高开发效率。首先,让我们理解这三个组件的核心作用: 1. Maven:是一个项目管理工具,它帮助开发者管理项目的构建、依赖、版本控制等。...
随着Struts2框架的不断更新和发展,很多开发者在尝试使用注解方式进行配置时往往会遇到不少难题。尤其是在使用Struts2.1及以上版本时,由于大部分教程和资料仍然基于早期版本(如2.0版),这使得学习者难以找到适合...
Struts2 是一个流行的Java Web框架,用于构建MVC(模型-视图-控制器)架构的应用程序。在Struts2的版本2.1之后,它引入...例如,可以使用Struts2的注解(如`@Action`,`@Result`等)来覆盖或补充Convention的默认行为。
本项目主要介绍如何通过注解的方式实现Struts2的图片上传功能,这是一个非常实用的功能,尤其对于构建交互性强的Web应用来说。在本文中,我们将深入探讨Struts2的注解使用、图片上传流程以及相关的Java配置。 1. **...