title: Update or saveorUpdate in CRUDRepository
body: <p>I know there's already a similar question answered previously, but my problem is implementing save with update while there are 3 methods in the interface.
  I'm currently using the following methods in my project and don't know how to make saveOrUpdate in this.
  The following are my classes:</p>
  
  <pre><code>   public interface CompanyRepository extends CrudRepository&lt;Company,Long&gt;{
     Company findByCompanyName (String companyName);
     List&lt;Company&gt; findAll();
     Company findById(Long id);
     }
  </code></pre>
  
  <p>The following is part of my Company Class</p>
  
  <pre><code>@Entity
  public class Company extends BaseEntity{
   @NotNull
  @Size(min = 2, max = 16)
  private String companyName;
  @Length(max = 60)
  private String desc;
  //TODO max: add LOGO class later for pic saving
  @OneToMany
  private List&lt;MobileModel&gt; mobileModels;
  
  public Company()
  {
    super();
    mobileModels = new ArrayList&lt;&gt;();
    }
  
  //Getters n setters
   }
  </code></pre>
  
  <p>The following is my baseEntity clas</p>
  
  <pre><code>@MappedSuperclass
  public abstract class BaseEntity {
  @Id
  @GeneratedValue(strategy =  GenerationType.AUTO)
  protected final Long id;
  
  @Version
  private Long version;  
  //Getters n setters
  }
  </code></pre>
  
  <p>Thanks in advance.
  I read everywhere and tried so many things for 5 hours. 
  I just want CompanyRepository to implement all 3 methods without me overriding them in some other class but if I have too then explain how because part of my code is dependent on CompanyRepository. I just wish to add save with update, please explain with respect to my code.</p>