Spring mvc編集(注記)


少し前にwebプロジェクトをしてspring mvcを使ったことがありますが、これはいいと思っていました.その时もいろいろな研究をしていましたが、今は自分が作ったtestプロジェクトを開くのが疎かになっています.
 
まずSpringでよく使われる注釈のいくつかを紹介します.
 
1.@Resourceこの寸法は最も一般的で、あなたが望むinstanceを注入するために使用され、現在のクラスに提供され、使用するには2つの方法があります.
a.メンバー変数を定義する前にeg:@Resource private JdbcTemplate templateと書く.
b.setメソッドの前に書く
2. @Repositoryという表記は注データベースにマッピングされている、いわゆるDaoでしょう
3. @Serviceはその名の通り伝説のサービス層用の表記です.
4. @Controllerは、Controller、すなわちActionであることを示す
5.@RequestMappingは、Controllerで要求パスを構成するための構成がクラスの前とメソッドの前にある
a.クラスの前に配置すると、そのクラスのすべての要求の前に配置の属性が加算されます.
b.メソッドの前に配置することは、現在のリクエストがこの注釈のメソッドによって実行され、返答されることである
この注記でよく使われる2つの構成は、Valueとmethodの前が構成要求パスであり、後の構成要求のための方法(POST/GET)である.
6.@ResponseBodyは、実行方法の戻り値タイプの前に、Responseとしてのbody部分を返すことを注記して説明する.
7.@PathVariableは、実行方法のパラメータの前に用いられ、このパラメータがURLに含まれることを説明する.
8.@Validこれは、このパラメータを注釈に組み立てるタイプを説明するために使用され、実行方法のパラメータの前にも使用されます.以下に例を示します.
 
実行方法:
	
	@RequestMapping(value="/image/{dir}/{name}/dealAreaImage.action",method=RequestMethod.POST)
	public @ResponseBody Object uploadImage(@PathVariable String dir,@PathVariable String name,@Valid ImageAreaVO imageArea,BindingResult bindingResult) throws IOException, Exception{
		if(bindingResult.hasErrors()){
			return bindingResult.getAllErrors();
		}
		int width=75,height=75;
		ByteArrayOutputStream bout=new ByteArrayOutputStream(); 
		ftpService.loadFile(dir, name,bout);
		byte[] buf = bout.toByteArray();
		buf=ImgTool.cutArea(buf, imageArea.getX1(),imageArea.getX2(), imageArea.getY1(),imageArea.getY2(),imageArea.getWidth(),imageArea.getHeight(),width,height,imageArea.getBaseW(),imageArea.getBaseH());
		
		
		String filename=System.currentTimeMillis()+ name.substring(name.lastIndexOf('.'));
		ByteArrayInputStream in=new ByteArrayInputStream(buf);
		ftpService.saveFile("image", filename,in);
		Image img=new Image();
		img.setWidth(width);img.setHeight(height);
		SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd");
		img.setAddTime(System.currentTimeMillis());//format.parse(image.getAddTime()).getTime());
		img.setUrl("image/"+filename);
		img.setNote("    ");
		imageService.saveImage(img);
		return "success";
	}

 
注記されたオブジェクトのタイプ:
 
 
package com.my.springmvc.web.vo;


public class ImageAreaVO {
	private Integer width;
	private Integer height;
	private Integer x1;
	private Integer x2;
	private Integer y1;
	private Integer y2;
	private Integer toW;
	private Integer toH;
	
	private Integer baseW;
	private Integer baseH;
	
	public final Integer getToW() {
		return toW;
	}
	public final void setToW(Integer toW) {
		this.toW = toW;
	}
	public final Integer getToH() {
		return toH;
	}
	public final void setToH(Integer toH) {
		this.toH = toH;
	}
	public final Integer getBaseW() {
		return baseW;
	}
	public final void setBaseW(Integer baseW) {
		this.baseW = baseW;
	}
	public final Integer getBaseH() {
		return baseH;
	}
	public final void setBaseH(Integer baseH) {
		this.baseH = baseH;
	}
	public final Integer getWidth() {
		return width;
	}
	public final void setWidth(Integer width) {
		this.width = width;
	}
	public final Integer getHeight() {
		return height;
	}
	public final void setHeight(Integer height) {
		this.height = height;
	}
	public final Integer getX1() {
		return x1;
	}
	public final void setX1(Integer x1) {
		this.x1 = x1;
	}
	public final Integer getX2() {
		return x2;
	}
	public final void setX2(Integer x2) {
		this.x2 = x2;
	}
	public final Integer getY1() {
		return y1;
	}
	public final void setY1(Integer y1) {
		this.y1 = y1;
	}
	public final Integer getY2() {
		return y2;
	}
	public final void setY2(Integer y2) {
		this.y2 = y2;
	}
	
}

よく使われる注釈マークを説明します.次の「Spring mvc小編」でSpring mvcの構成といくつかの小さな問題について説明します.