小编Mar*_*ope的帖子

忽略Spring MVC中的Accept标头

我有一个提供文件(图像,PDF等的控制器):

@Controller
public class FileController {

    @ResponseBody
    @RequestMapping("/{filename}")
    public Object download(@PathVariable String filename) throws Exception {
        returns MyFile.findFile(filename);
    }

}
Run Code Online (Sandbox Code Playgroud)

如果我请求带有以下Accept标头的文件,则会得到406:

Request     
URL: http://localhost:8080/files/thmb_AA039258_204255d0.png
Request Method:GET
Status Code:406 Not Acceptable
Request Headers
Accept:*/*
Run Code Online (Sandbox Code Playgroud)

如果我请求带有以下Accept标头的文件,则得到200:

URL: http://localhost:8080/files/thmb_AA039258_204255d0.png
Request Method: GET 
Status Code:200 OK
Request Headers
Accept: application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Run Code Online (Sandbox Code Playgroud)

这是我的spring-mvc上下文中的唯一视图解析器:

<bean class="org.springframework.web.servlet.view.UrlBasedViewResolver" id="tilesViewResolver">
   <property name="viewClass" value="org.springframework.web.servlet.view.tiles2.TilesView"/>
</bean>
Run Code Online (Sandbox Code Playgroud)

无论如何,有没有配置spring mvc忽略Accept标头?我已经看到了使用ContentNegotiatingViewResolver进行此操作的示例,但仅用于处理xml和json。

java spring spring-mvc

4
推荐指数
1
解决办法
5476
查看次数

在数据库中保存MultipartFile/blob问题

嗨我想上传一个图像并将其存储在我使用spring mvc&hibernate的数据库中

这是模型

import java.sql.Blob;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Lob;
import javax.persistence.Table;

@Entity
@Table(name = "article")
public class Article {

@Id
@GeneratedValue
@Column(name = "article_id")
private Long articleId;

@Column(name = "article_name", nullable = false, length=20)
private String articleName;

@Column(name = "article_desc", nullable = false)
private String articleDesc;

@Column(name = "date_added")
private Date addedDate;

 @Lob
    private Blob content;
public Article() {      
}

public Long getArticleId() {
    return articleId;
}

public void setArticleId(Long articleId) { …
Run Code Online (Sandbox Code Playgroud)

blob spring-mvc multipart

3
推荐指数
1
解决办法
9359
查看次数

Java - 能够访问静态方法的实例

我刚刚开始使用Java,正在调查这个Nested Classes主题,并尝试了一些东西,突然间,这发生了:

class Encloser
{
  static int i;

  static void m1()
  {
    System.out.println(i);
  }

  static void m2()
  {
    Enclosee.accessEncloser();
  }

  static class Enclosee
  {
    static void accessEncloser()
    {
      i = 1;
      m1();
    }

    static void accessEncloserNew()
    {
      m2();
    }
  }
}

class EncloserTest
{

  public static void main(String[] args)
  {
    Encloser ee = new Encloser();
    Encloser.Enclosee e = new Encloser.Enclosee();
    ee.m1();
    ee.m2();
    e.accessEncloser();
    e.accessEncloserNew();Encloser.m1();
    Encloser.m2();
    Encloser.m1();
    Encloser.Enclosee.accessEncloserNew();
    Encloser.Enclosee.accessEncloser();
  }

}
Run Code Online (Sandbox Code Playgroud)

运行上面的代码不会给出任何错误/异常.它只是运行.这里的困惑是,实例如何能够在Static Methods这里调用?不Static Methods喜欢Class …

java static instance-variables nested-class

3
推荐指数
1
解决办法
537
查看次数

覆盖抽象方法compare()

嗨,我是编程的新手,我的比较方法有困难,我有几个类,我的初始问题是我的父类.

我收到此错误:

Person不是抽象的,并且不会覆盖Comparator中的方法比较(java.lang.Object,java.lang.Object)

    public class Person implements Comparator
    {
     //some methods

    public int compare(Person p1, Person p2)
    {
       // if last names are the same compare first names
       if(p1.getLastName().equals(p2.getLastName()))
       {
           return p1.getFirstName().compareTo(p2.getFirstName());
       }
       return p1.getLastName().compareTo(p2.getLastName());

    }
Run Code Online (Sandbox Code Playgroud)

我的孩子班看起来像这样:

    public class Player extends Person implements Comparator
    {
      //some methods

    public int compare(Player p1, Player p2)
    {
       if(p1.getGamesPlayed()<p2.getGamesPlayed())

       {
          return -1;
       }else if (p1.getGamesPlayed()==p2.getGamesPlayed())
       {
          return 0;
       }else
       {
          return 1;
       }
     }
Run Code Online (Sandbox Code Playgroud)

我还有一个俱乐部类,它将所有信息存储在ArrayList <Player>团队中.

我的界面:

    public interface Comparator<T>
    {
        int compare(T …
Run Code Online (Sandbox Code Playgroud)

java comparator

2
推荐指数
1
解决办法
4万
查看次数

一个动作在多个应用程序中重用

我有一个带有两个不同应用程序(前端,后端)的symfony应用程序,但有一个共同的操作.现在我在两个应用程序中都重复了它的代码,但我完全不喜欢它.

有没有办法在多个symfony应用程序中重用一个动作?

symfony1 code-duplication

1
推荐指数
1
解决办法
253
查看次数