eclipse環境下:lombok安裝及使用
阿新 • • 發佈:2018-12-26
lombok:通過註解方式減少POJO類的getter和setter等方法來消除冗餘程式碼量
安裝
1.下載 lombok.jar
2.官網說是可以雙擊安裝,,,我用這種方法不可行
2.手動安裝
(1)將lombok.jar移到eclipse的安裝目錄
(2)在eclipse.in檔案最後加入下面兩行
-Xbootclasspath/a:lombok.jar
-javaagent:lombok.jar
=============
-javaagent:xxx.jar 的jar名稱 需要與根目錄下的jar名一致,
不一致,可能會出現eclipse無法啟動的情況。
(3)重啟eclipse,進行程式碼測試
原始java程式碼:
public class NoteTest {
private int noteId;
private String title;
private String content;
private int typeId;
}
class檔案反編譯後:
public class NoteTest
{
private int noteId;
private String title;
private String content;
private int typeId;
public NoteTest ()
{
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
加入lombok註解後的java程式碼:
@Data
@NoArgsConstructor
@AllArgsConstructor
@ToString(exclude="typeId")
public class NoteTest {
private int noteId;
private String title;
private String content;
private int typeId;
}
加註解,經反編譯:
public class NoteTest
{
private int noteId;
private String title;
private String content;
private int typeId;
public int getNoteId()
{
return noteId;
}
public String getTitle()
{
return title;
}
public String getContent()
{
return content;
}
public int getTypeId()
{
return typeId;
}
public void setNoteId(int noteId)
{
this.noteId = noteId;
}
public void setTitle(String title)
{
this.title = title;
}
public void setContent(String content)
{
this.content = content;
}
public void setTypeId(int typeId)
{
this.typeId = typeId;
}
public boolean equals(Object o)
{
if (o == this)
return true;
if (!(o instanceof NoteTest))
return false;
NoteTest other = (NoteTest)o;
if (!other.canEqual(this))
return false;
if (getNoteId() != other.getNoteId())
return false;
Object this$title = getTitle();
Object other$title = other.getTitle();
if (this$title != null ? !this$title.equals(other$title) : other$title != null)
return false;
Object this$content = getContent();
Object other$content = other.getContent();
if (this$content != null ? !this$content.equals(other$content) : other$content != null)
return false;
return getTypeId() == other.getTypeId();
}
protected boolean canEqual(Object other)
{
return other instanceof NoteTest;
}
public int hashCode()
{
int PRIME = 59;
int result = 1;
result = result * 59 + getNoteId();
Object $title = getTitle();
result = result * 59 + ($title != null ? $title.hashCode() : 43);
Object $content = getContent();
result = result * 59 + ($content != null ? $content.hashCode() : 43);
result = result * 59 + getTypeId();
return result;
}
public NoteTest()
{
}
public NoteTest(int noteId, String title, String content, int typeId)
{
this.noteId = noteId;
this.title = title;
this.content = content;
this.typeId = typeId;
}
public String toString()
{
return (new StringBuilder("NoteTest(noteId=")).append(getNoteId()).append(", title=").append(getTitle()).append(", content=").append(getContent()).append(")").toString();
}
}