`

nutz简单登陆注解@Ok("json")在IE浏览器下报文件下载的问题

    博客分类:
  • nutz
阅读更多

最近,在研究nutz,非常好用的框架!我花了一天的时间,按照wendal的视频做了一个简单的登陆功能,在类MainModule中的注解@Ok(“raw”)时候,访问http://localhost:8080/nutz/usr/ping方法返回正常,

我的工程目录

 

 

MainModule类

 

运行后的结果

A

 

但是我在使用json注解时候,就出现

 

注意,这是IE浏览器,IE浏览器,IE浏览器,重要事情说三遍!

 


这是为什么呢,而且控制台也报错

 

这是类UserModule

package net.zosef.nutz.module;

 

import java.util.Date;

import javax.servlet.http.HttpSession;

import net.zosef.pojo.User;

import org.nutz.dao.Cnd;

import org.nutz.dao.Dao;

import org.nutz.ioc.loader.annotation.Inject;

import org.nutz.ioc.loader.annotation.IocBean;

import org.nutz.lang.Strings;

import org.nutz.log.Log;

import org.nutz.log.Logs;

import org.nutz.mvc.annotation.At;

import org.nutz.mvc.annotation.Attr;

import org.nutz.mvc.annotation.Param;

 

@IocBean

@At("/usr")

public class UserModule {

private static final Log log = Logs.get();

 

@Inject

private Dao dao;

@At

public boolean login(@Param("name")String name,

@Param("passwd")String passwd,

HttpSession session){

if (Strings.isBlank(name) || Strings.isBlank(passwd)){

return false;

}

 

name = name.trim().intern();

passwd = passwd.trim().intern();

 

User user = dao.fetch(User.class, Cnd.where("name","=",name).and("passwd","=",passwd));

if (user == null)

return false;

session.setAttribute("me", user);

return true;

}

 

@At

public void logout(HttpSession session){

session.invalidate();

}

 

@At

public User me(@Attr("me")User user) {

return user;

}

 

@At("/ping")

public Object ping(){

log.debug("log==="+dao);

System.out.println("ping 方法");

return new Date();

}

}

最后,在nutz社区请教了一下wendal大神,大神秒回复,在类MainSetup的init方法开始的地方,加入一句 UTF8JsonView.CT= "text/plain";,再重新访问方法,一切OK!

 

package net.zosef.nutz;

import net.zosef.pojo.User;

import org.nutz.dao.Dao;

import org.nutz.dao.entity.annotation.Table;

import org.nutz.log.Log;

import org.nutz.log.Logs;

import org.nutz.mvc.NutConfig;

import org.nutz.mvc.Setup;

import org.nutz.mvc.view.UTF8JsonView;

import org.nutz.resource.Scans;

 

public class MainSetup implements Setup {

 

private static final Log log = Logs.get();

 

public void init(NutConfig config) {

log.debug("config ioc== " + config.getIoc());

UTF8JsonView.CT = "text/plain";

 

Dao dao = config.getIoc().get(Dao.class);

for (Class<?> klass : Scans.me().scanPackage("net.zosef.pojo")){

if (null != klass.getAnnotation(Table.class))

dao.create(klass, false);

}

 

if (dao.count(User.class) == 0) {

User admin = new User();

admin.setName("admin");

admin.setPasswd("123456");

dao.insert(admin);

}

 

}

 

public void destroy(NutConfig config) {

 

}

}

 

 

分享到:
评论

相关推荐

    nutz 文件上传例子

    在这个例子中,`@Param("file")` 注解用于指定表单中文件字段的名称,`UploadFile` 是 Nutz 提供的用于处理上传文件的类,包含了文件名、文件内容等信息。`saveFileToServer()` 方法是保存文件到服务器的逻辑,这...

    在Nutz中使用Ioc-Annotation的入门教程

    虽然Nutz鼓励使用注解,但在某些场景下,仍然需要配置文件。Nutz支持JSON格式的配置文件,用于声明Bean之间的关系和特殊配置。 ```json { "myService": {"type": "com.example.MyService", "args": [{"ref": ...

    Nutz_Json_Book

    这种兼容性确保了 Nutz.Json 在不同场景下的可用性。 #### 三、使用案例 为了更好地理解 Nutz.Json 的使用,以下是一些具体的使用案例: 1. **处理基本类型**: - **输入**:`6.5`, `"json"`, `new int[]{}`。 ...

    nutz代码生成器

    总之,Nutz代码生成器是Nutz框架下提高开发效率的有效工具,通过它,你可以快速搭建起基于Nutz的业务系统,节省时间和精力,更专注于业务功能的创新与优化。在实际开发中,结合Nutz的其他特性,如事务管理、拦截器、...

    nutz需要的jar包

    Nutz是一个轻量级、高性能的Java开发框架,它提供了丰富的功能,包括MVC、ORM、DAO、AOP、IOC等,使得Java开发者能够快速地构建应用系统。本篇文章将详细探讨Nutz框架中所需的jar包以及它们在项目中的作用。 首先,...

    nutz迷你项目

    1. **Nutz ORM**:Nutz的ORM模块允许开发者通过简单的注解来操作数据库,无需编写繁琐的SQL语句。例如,@Table和@Id注解用于标记实体类和主键,@Column定义字段与数据库列的映射。 2. **Nutz HTTP客户端**:Nutz...

    nutz-1.b.52.zip

    如果一个 Web 应用,你在 WEB-INF/lib 下只 需要放置一个 nutz.jar 就够了 当然你要使用连接池,数据库驱动等功能,还需要自行添置 jar 包。 -------------Nutz 为谁而设计? 如果你觉得 Hibernate 控制比较繁琐,...

    ztree与nutz简单使用

    《ztree与nutz在实际应用中的简单使用详解》 在IT行业中,高效地管理和操作数据是至关重要的。zTree和Nutz都是在这方面提供强大支持的工具。zTree是一款基于JavaScript的灵活、强大的树状菜单插件,而Nutz则是一个...

    nutz应用示例

    在Nutz中,数据访问层通常使用`$DB`注解或者`@Sql`注解来执行SQL查询和操作。开发者可以通过这些注解编写简洁的数据库操作代码,而无需手动管理连接,这大大提高了开发效率。 此外,Nutz也提供了强大的Ajax和JSON...

    nutz-1.b.48-manual.pdf 文档

    Nutz的设计目的之一是解决Java在Web开发领域相对于脚本语言而言显得开发效率较低的问题,通过提供一整套简洁、高效的组件和工具,如Dao、Ioc、Mvc、Json、Castors、Lang、Aop、Plugin和Resource,它们独立使用且功能...

    nutz框架开发手册

    - **灵活性**:Nutz支持多种配置方式,如JSON风格的配置文件、注解等,便于不同开发者根据自身需求选择合适的配置方式。 #### 三、Nutz框架各模块详解 1. **Dao模块**:针对JDBC进行了轻量级封装,提供了简单的...

    nutz初使用之MVC HelloWorld (netbeans jsp版)

    在本文中,我们将深入探讨如何使用Nutz框架创建一个简单的MVC(Model-View-Controller)应用程序,以“HelloWorld”为例。Nutz是一个轻量级的Java开发框架,它提供了全面的MVC支持,使得开发者能够高效地构建Web应用...

    nutz搭建的MVC框架

    在Nutz MVC中,可以通过注解`@NController`来标记一个类作为控制器。 2. **模型(Model)**:模型包含业务逻辑和数据处理,与数据库交互,处理数据验证等。Nutz提供了一套完整的ORM(Object-Relational Mapping)...

    nutz 缓存

    1. **缓存注解**:Nutz DAO提供了`@Cache`注解,可以在查询方法上使用,指定缓存的键值生成规则和缓存过期时间。 2. **缓存策略**:Nutz支持两种缓存策略,即LRU(Least Recently Used,最近最少使用)和LFU(Least...

    nutz pdf学习文档

    Nutz.Mvc则采用了注解风格的配置和内置的多文件上传功能,大大简化了控制器层面的代码编写。Nutz.Json则提供了JSON的解析和渲染功能,旨在简化数据的转换过程。 Nutz框架的设计理念是通过提供轻量级、可独立使用的...

    nutz生成javabean工具.zip

    在给定的压缩包"nutz生成javabean工具.zip"中,我们可以看到一个名为"NutzCodematic-master"的项目,这很可能是Nutz提供的一个用于自动化生成JavaBean类的工具。下面我们将详细探讨Nutz Codematic及其在Java开发中的...

    nutz框架使用手册.zip

    5. **实战示例**:手册可能包含多个实际开发案例,如CRUD操作、表单验证、文件上传下载、AJAX交互等,帮助读者通过实践更好地理解和掌握Nutz框架的使用。 6. **性能优化**:对于大型项目,性能优化至关重要。手册...

Global site tag (gtag.js) - Google Analytics